[Перевод] Структуры данных на практике. Глава 11: Префиксные деревья и базисные деревья
Кошмар с автозавершениемНаше префиксное дерево было в 8 раз медленнее хэш-таблицы. И оно потребляло 128 МБ памяти, в отличие от хэш-таблицы с 24 МБ.Такого не должно было произойти. Префиксные деревья — стандартное решение для автозавершения: поиск за O(k), где k — длина строки вне зависимости от размера датасета. Ид...
Кошмар с автозавершениемНаше префиксное дерево было в 8 раз медленнее хэш-таблицы. И оно потребляло 128 МБ памяти, в отличие от хэш-таблицы с 24 МБ.Такого не должно было произойти. Префиксные деревья — стандартное решение для автозавершения: поиск за O(k), где k — длина строки вне зависимости от размера датасета. Идеально подходит для сопоставления префиксов. Обычно всегда используется для автозавершения, проверки правописания и таблиц IP-маршрутизации.Мой коллега предложил использовать префиксное дерево для функции автозавершения в нашем инструменте командной строки. Поиск в нём должен был выполняться по 50 тысячам команд и опций. Учебники говорили, что это правильный выбор.Поэтому мы реализовали префиксное дерево. Результаты бенчмарка оказались ужасными:Префиксное дерево было в 8 раз медленнее простой хэш-таблицы. И оно использовало 128 МБ памяти, в то время как хэш-таблица — всего 24 МБ.Где мы ошиблись?
Краткая сводка
Авторы использовали префиксное дерево для автозавершения, но в тесте оно оказалось в 8 раз медленнее хеш‑таблицы и потребовало 128 МБ памяти против 24 МБ у хеш‑таблицы, что заставило их искать ошибку в реализации.
Связанные теги
Компании и люди
Линия сюжета
Продолжить следить за темой
Переходите к связанным материалам, страницам сущностей и активным линиям сюжета.
Почему Hyundai смогла сделать из Atlas заводского робота, а другие — нет
Boston Dynamics сделали Atlas в 1992 году. За 30 лет он научился делать сальто, бегать по бездорожью и прыгать через препятствия. Три разных владельца — Google, SoftBank, Hyunda...
«СибИАЦ» ускоряет получение 2D-чертежей из модели в nanoCAD BIM Строительство
Специалисты проектного института «Сибирьэнергопроект» (входит в инженерный центр «СибИАЦ») столкнулись с парадоксом современного проектирования: 3D-модель, созданная для анализа...
Записки оптимизатора 1С (ч.16). Риски падения Postgres: потребление и высвобождение памяти процессами postgres
Статья родилась в ходе наблюдения за одной из систем на Postgres, что у нас на поддержке. Результаты наблюдения несколько удивили, поэтому делюсь, ибо причинно-следственные связ...
Почему главный вопрос философии больше не имеет смысла: что квантовая физика говорит о материи и сознании
Современная наука фактически растворила дихотомию идеального и материального. Если вы откроете любой учебник по философии, то почти гарантированно найдёте там раздел о "главном ...
Почему хаос в данных убивает продажи и как правильная архитектура спасает ритейл
Всем привет! Меня зовут Александр Чепрасов, я бизнес-аналитик компании QSOFT. В этой колонке я расскажу, как беспорядок в данных ритейл-компаний может разрушить продажи — и коне...
Программа MusPlay для ввода нот и их проигрывания
Программа MusPlay предназначена для создания и проигрывания музыкальных композиций, используя их нотную запись и заранее записанные в аудио файлы звучание отдельных нот, извлека...
Страницы сущностей
Рекламный слот
Встроенный блок в статье
Зарезервированный партнерский слот для релевантных инструментов, сервисов и аккуратных редакционных интеграций.
Похожие статьи
Еще материалы, которые пересекаются по тегам, источнику или категории.
Почему Hyundai смогла сделать из Atlas заводского робота, а другие — нет
Boston Dynamics сделали Atlas в 1992 году. За 30 лет он научился делать сальто, бегать по бездорожью и прыгать через препятствия. Три разных владельца — Google, SoftBank, Hyunda...
«СибИАЦ» ускоряет получение 2D-чертежей из модели в nanoCAD BIM Строительство
Специалисты проектного института «Сибирьэнергопроект» (входит в инженерный центр «СибИАЦ») столкнулись с парадоксом современного проектирования: 3D-модель, созданная для анализа...
Записки оптимизатора 1С (ч.16). Риски падения Postgres: потребление и высвобождение памяти процессами postgres
Статья родилась в ходе наблюдения за одной из систем на Postgres, что у нас на поддержке. Результаты наблюдения несколько удивили, поэтому делюсь, ибо причинно-следственные связ...
Почему главный вопрос философии больше не имеет смысла: что квантовая физика говорит о материи и сознании
Современная наука фактически растворила дихотомию идеального и материального. Если вы откроете любой учебник по философии, то почти гарантированно найдёте там раздел о "главном ...
Еще материалы от Habr
Свежие публикации и продолжение темы от той же редакции.
Почему Hyundai смогла сделать из Atlas заводского робота, а другие — нет
Boston Dynamics сделали Atlas в 1992 году. За 30 лет он научился делать сальто, бегать по бездорожью и прыгать через препятствия. Три разных владельца — Google, SoftBank, Hyunda...
«СибИАЦ» ускоряет получение 2D-чертежей из модели в nanoCAD BIM Строительство
Специалисты проектного института «Сибирьэнергопроект» (входит в инженерный центр «СибИАЦ») столкнулись с парадоксом современного проектирования: 3D-модель, созданная для анализа...
Записки оптимизатора 1С (ч.16). Риски падения Postgres: потребление и высвобождение памяти процессами postgres
Статья родилась в ходе наблюдения за одной из систем на Postgres, что у нас на поддержке. Результаты наблюдения несколько удивили, поэтому делюсь, ибо причинно-следственные связ...
Почему главный вопрос философии больше не имеет смысла: что квантовая физика говорит о материи и сознании
Современная наука фактически растворила дихотомию идеального и материального. Если вы откроете любой учебник по философии, то почти гарантированно найдёте там раздел о "главном ...