Изменения
Бор
,→Использование бора в качестве ассоциативного массива
===Использование бора в качестве ассоциативного массива===
====Определения====*<tex>k</tex> {{---}} длина строки*<tex>m</tex> {{---}} число ключей====Использование====Благодаря тому, что бор позволяет решать задачу, описанную выше, он может выступать в качестве ассоциативного массива. Обычно, когда требуется такая структура, то используют [[Дерево поиска, наивная реализация | двоичное дерево поиска]] или [[Хеш-таблица | хеш-таблицу]]. Бор объединяет некоторые преимущества этих структур данных и позволяет одновременно делать следующие операции, которые каждая из структур не может делать по отдельности: .#Добавление элемента в ассоциативный массив за <tex>O(nk)</tex>, где <tex>n</tex> {{---}} длина строки (а дерево может за <tex>O(nk~log~m)</tex>).#Получение всех ключей в отсортированном порядке за <tex>O(m)</tex>, где <tex>m</tex> {{---}} число ключей (а хеш-таблица может только за <tex>O(m~log~m)</tex>).
Несмотря на данные достоинства у реализации ассоциативного массива в виде бора есть следующие недостатки:
# Бор хранит строки или символы, а это значит, что у значения ключа будет ограничение на тип (строки, символы, либо числа, представленные как строки).