跳到主要内容

535.TinyURL的加密与解密

链接:535.TinyURL的加密与解密
难度:Medium
标签:设计、哈希表、字符串、哈希函数
简介:TinyURL 是一种 URL 简化服务, 比如:当你输入一个 URL https://leetcode.com/problems/design-tinyurl  时,它将返回一个简化的 URL http://tinyurl.com/4e9iAk。

题解 1 - typescript

  • 编辑时间:2021-07-24
  • 执行用时:88ms
  • 内存消耗:39.5MB
  • 编程语言:typescript
  • 解法介绍:随机生成哈希值。
const random = () => (~~(Math.random() * 10000)).toString();
const map: Record<string, string> = {};
function encode(longUrl: string): string {
let s = random();
while (map[s]) s = random();
map[s] = longUrl;
return s;
}
function decode(shortUrl: string): string {
return map[shortUrl];
}