deno.land / x / masx200_leetcode_test@10.6.5 / design-skiplist / index.ts

نووسراو ببینە
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
interface Skiplist { search: (target: number) => boolean; add: (num: number) => void; erase: (num: number) => boolean;}
function Skiplist(): Skiplist { const storage = new Map<number, number>();
function search(target: number): boolean { return storage.has(target) && (storage.get(target) || 0) > 0; }
function add(num: number): void { storage.set(num, 1 + (storage.get(num) || 0)); }
function erase(num: number): boolean { if (storage.get(num) === 1) { storage.delete(num);
return true; } if (search(num)) { storage.set(num, -1 + (storage.get(num) || 0)); return true; } else { return false; } } return { search, add, erase };}
export default Skiplist;
masx200_leetcode_test

Version Info

Tagged at
a year ago