Мы знаем, что сбалансированные деревья выполняют вставку, удаление и поиск в O (log n) -time, примеры включают
- Красно-черный
- AVL
- Splay
- B-дерево (и его варианты).
Однако, когда ключи являются целыми числами в ограниченном диапазоне, можно использовать дерево Van Emde Boas для переноса этих операций до O (log (log n)) - время, то есть экспоненциально лучше, чем деревья AVL или RB, Ну, это на самом деле случай многих приложений в реальном мире.
Я вижу много приложений для этого. Один из них, который я хотел бы привести, - это базы данных, для которых создание индексов в основном предполагает выбор между хешем или B * -tree. Если бы дерево Van Emde Boas было реализовано, это обеспечило бы половину между этими двумя вариантами, теоретически улучшив многие проблемы оптимизации запросов.
Почему дерево Van Emde Boas широко не используется, как говорят Red-Black или B-tree, поскольку
- это не новинка (она была изобретена в 1975 году).
- легко реализовать
- быстрее, чем другие деревья
и каковы соображения об этом?