Решение
class MyHashMap {
private val size = 1009
private val buckets = Array(size) { mutableListOf<Pair<Int, Int>>() }
private fun hash(key: Int) = key % size
fun put(key: Int, value: Int) {
val index = hash(key)
val bucket = buckets[index]
for (i in bucket.indices) {
if (bucket[i].first == key) {
bucket[i] = key to value
return
}
}
bucket.add(key to value)
}
fun get(key: Int): Int {
val index = hash(key)
for ((k, v) in buckets[index]) {
if (k == key) return v
}
return -1
}
fun remove(key: Int) {
val index = hash(key)
val bucket = buckets[index]
val iterator = bucket.iterator()
while (iterator.hasNext()) {
if (iterator.next().first == key) {
iterator.remove()
return
}
}
}
}