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?