я хеширую строки... а затем мне приходится сортировать вторые строки в алфавитном порядке. Я должен иметь возможность удалять, вставлять или получать номер позиции в моем отсортированном дереве вторых строк. Итак, например, у меня есть хэш-таблица на основе типа животных (кошка, собака...), и каждое ведро имеет дерево AVL с именами, отсортированными по апфабетическому принципу.
insert("кот","Гарфилд"); вставить("кот","Зоро");
гарфилд и зоро будут иметь одинаковый хеш-ключ, потому что они оба кошки, но гарфилд будет корневым и правым потомком зоро.. поэтому, когда я захочу удалить гарфилда, мне придется снова отсортировать дерево..
Мой вопрос в том, является ли хеш-таблица + дерево avl самым быстрым вариантом? также, как я уже сказал, мне нужно иметь возможность получить имя животного на основе типа (хэш-ключ) плюс индекс.
изменить: это всего лишь пример, все является переменным и вставляется через функцию, поэтому количество видов может быть 1 миллион и имена тоже