Hashing

Set/Map

Method
Set
Map
Big O

Init

new Set(['1','2']);

new Map([ [0,1],[0,2] ]);

增加

mySet.add('1')

myMap.set(0, 1)

O(1)

刪除

mySet.delete('1')

myMap.delete(0)

O(1)

清掉

mySet.clear()

myMap.clear()

取值

-

mySet.get(0) // 1

O(1)

是否存在

mySet.has('1')

myMap.has(0)

O(1)

長度

mySet.size

myMap.size

轉陣列

[...mySet]

[...myMap.values()]

Set

// ES6 Set
let instruments = new Set();
// or 一開始就把值存進去
let instruments = new Set(['1','2']);


instruments.add('piano');
instruments.has('guitar'); // false
instruments.delete('guitar'); // 裡面根本沒有 guitar 所以回傳 false
instruments.size; // 1
[...instruments] //['piano']

// or use Array.from, 
Array.from(instruments); 

Map

其他

可以改寫更簡短

以下同理

Last updated

Was this helpful?