Update array_hash_map

This commit is contained in:
krahets
2023-03-15 03:11:43 +08:00
parent 669388128f
commit d5afd93571
10 changed files with 98 additions and 98 deletions

View File

@ -17,12 +17,12 @@ class Entry {
/* */
class ArrayHashMap {
private var bucket: [Entry?] = []
private var buckets: [Entry?] = []
init() {
// 100
for _ in 0 ..< 100 {
bucket.append(nil)
buckets.append(nil)
}
}
@ -35,7 +35,7 @@ class ArrayHashMap {
/* */
func get(key: Int) -> String? {
let index = hashFunc(key: key)
let pair = bucket[index]
let pair = buckets[index]
return pair?.val
}
@ -43,20 +43,20 @@ class ArrayHashMap {
func put(key: Int, val: String) {
let pair = Entry(key: key, val: val)
let index = hashFunc(key: key)
bucket[index] = pair
buckets[index] = pair
}
/* */
func remove(key: Int) {
let index = hashFunc(key: key)
// nil
bucket[index] = nil
buckets[index] = nil
}
/* */
func entrySet() -> [Entry] {
var entrySet: [Entry] = []
for pair in bucket {
for pair in buckets {
if let pair = pair {
entrySet.append(pair)
}
@ -67,7 +67,7 @@ class ArrayHashMap {
/* */
func keySet() -> [Int] {
var keySet: [Int] = []
for pair in bucket {
for pair in buckets {
if let pair = pair {
keySet.append(pair.key)
}
@ -78,7 +78,7 @@ class ArrayHashMap {
/* */
func valueSet() -> [String] {
var valueSet: [String] = []
for pair in bucket {
for pair in buckets {
if let pair = pair {
valueSet.append(pair.val)
}