Структура данных LitDB внутри таблицы индексов прыжка достичь, я знаю, что проекты с открытым исходным кодом с помощью таблиц переходов также включают Redis, вы можете найти в Интернет для достижения на Redis табличной функции скачки. В этой главе я совместит примеры, чтобы объяснить скачок в LiteDB таблице.
Перейти Таблица 1. Сравнение с другими структурами данных
Мы часто можем услышать B-дерева, красно-черные деревья, AVL деревья, расширяющееся дерево, Treep, но давайте открыть редактор себя достичь, вы можете рассмотреть довольно много деталей. таблица Используйте прыжок, очень просто, это рандомизированная структурой данных, эффективность и AVL дерева и красно-черное дерево пары, но его принципы не являются сложными, пока операция может читать список, вы можете легко достигнуть прыжок таблица.
Поиск таблица переходов 1,1
Перейти таблица имеет следующие свойства:
(1) структура, состоящая из множества слоев
(2) Каждый слой представляет собой упорядоченный список
(3) низший уровень (уровень 1), который содержит все элементы списка
(4) Если элемент появляется в списке I уровня в списке ниже он также появится в I уровня.
(5) Каждый узел содержит два указателя, указатель на следующий элемент в этом же списке, указатель на один из следующих элементов.
Пример: Найти элемент 117
(1) сравнение 21, более 21 большой, глядя на спину
(2) Сравнительный 37, большие, чем 37, меньше, чем максимальное значение в списке, с самого начала, чтобы найти следующий слой 37
(3) Сравнительный 71, большая, чем 71, меньше, чем максимальное значение в списке, с самого начала, чтобы найти следующий слой 71
(4) Сравнение 85 больше, чем 85, глядя из-за
(5) Сравнительный 117, равно 117, чтобы найти узел.
Вставить таблицу прыжок 1.2
Сначала определяет количество слоев элемента будет занимать K (путем потерянной монеты, которая совершенно случайно) и 1-го уровня ... Уровень K в отдельных слоях, вставляется в список элементов.
Примеры: Вставка 119, К = 2
1.3 сложность пространственного анализа таблицы переходов
В соответствии с вышеуказанным анализом, желательно на высоту каждого элемента 2, размера п таблицу переходов, число узлов, которые, как ожидается, значение 2n.
2.LiteDB индекса скачок визуализация таблицы вставки анимация
По графику выше, мы можем видеть, что скачок примерно таблица запросов и вставить его довольно легко понять, здесь я использую визуальный способ показать, как LiteDB вставить запись, вставить следующую анимационную таблицу еще под названием «клиент «таблица, поле {» Идентификатор «» Возраст «» Имя „}, есть теперь случайная запись 10, вставляются в интерфейс, когда в следующей статье 11 записей, поле“ Возраст «вариация индекса, тем следующий инструмент визуализации, который можно ясно увидеть при вставке в индекс и посмотреть на трек:
3.LiteDB индекс скачка таблица перекодировки визуализации анимации
В приведенных выше данных, я нахожу данные Возраст: 9, и теперь мы можем видеть, внимательно посмотреть на его шаг индекс запрос является первым после первого левого заднего правого порядка, который является сущностью таблицы переходов (Нажмите на картинку для увеличения ):
4. Заключение
Интерпретация LiteDB вероятно остановится здесь, я думаю, что общий процесс, чтобы использовать этот источник против классовой схемы, показанной на диаграмме классов управления, чтобы увидеть функции каждого модуля, добавление и поиск индекса, вы можете думать только о том, чтобы визуализировать. LiteDB последняя версии добавлена возможность хорошо использовать, если используется за проектом, также может вернуться обновить некоторые сведения об использовании.