Изменения

Перейти к: навигация, поиск

Бор

Нет изменений в размере, 21:19, 13 апреля 2016
Использование бора в качестве ассоциативного массива
#Добавление элемента в ассоциативный массив за <tex>O(k)</tex> (дерево выполняет данную операцию за <tex>O(k\log m)</tex>).
#Получение всех ключей в отсортированном порядке за <tex>O(m)</tex> (хеш-таблица выполняет данную операцию за <tex>O(m\log m)</tex>).
Обозначения:
*<tex>k</tex> {{---}} длина строки
*<tex>m</tex> {{---}} число ключей
 
====Недостатки====
Несмотря на данные достоинства у реализации ассоциативного массива в виде бора есть следующие недостатки:
# Бор хранит строки или символы, а это значит, что у значения ключа будет ограничение на тип (строки, символы, либо числа, представленные как строки). Чтобы это исправить, научимся приводить любой тип данных к строке. Тогда сможем хранить любой вид данных в качестве ключа.
#Если реализовывать ассоциативный массив на обычном боре, а ключами будут являться строки, то будет использоваться слишком много памяти (возможен, например, вариант, когда у слов нет пересечений по префиксу, тогда бор будет использовать <tex>O(mk)</tex> памяти).
 
Обозначения:
*<tex>k</tex> {{---}} длина строки
*<tex>m</tex> {{---}} число ключей
==См. также==
Анонимный участник

Навигация