Create Custom HashMap
Published in
Apr 4, 2021
Задача: Спроектировать Хеш-таблицу без использования встроенных хэш-функций.
Необходимо реализовать класс CustomHashMap:
- Add(int key, int value) — метод, ктр вставляет пару (ключ, значение) в Хеш-таблицу. Если ключ уже существует, то обновите соответствующее значение.
- Get(int key) — метод, ктр возвращает значение по ключу. Если такого ключа нет то метод возвращает -1.
- Remove(key) — метод, ктр пару { ключ, значение }, если такая пара есть в хэш-таблице.
Разбор
Самое простое решение будет использование массива. Минус такого подхода — максимальный размер массива будет определять размер максимальный размер входных данных хэш-таблицы.
Так как и массива и хэш-таблица имеет O(1) и для вставки и для извлечения элемента, то функции Add, Get будут легко определены. Функция Remove будет не удалять элемент массива и заносить предельное значение, например int.MinValue.