А теперь мой вопрос, а что если мне нужно будет

найти 32 индекс, мы просто сразу перескочем на уровне Leaf node в правый блок или же B-дерево не перескакивает с одного листового узла (Leaf node) на другой, минуя промежуточные узлы (Intermediate nodes), даже если значения находятся в разных блоках или интервалах ?

14 ответов

8 просмотров

Ничего никуда не перескочет. Поиск по дереву - это обход дерева начиная с корня. Все будет ровно также, как в первом примере. И на картинке немного не точно, если узел условно 31+, то в нем будет просто значение 31. Все листья со значениями больше 31 будут по правой ветке. А вот это многоточие предполагает, что там еще какие-то конкретные значения. Они известны и их конечное число. Т.е. условно там 31-50, либо просто 31.

Вопрос не ясен какую операцию ты Рассматриваешь?

Maks
Ничего никуда не перескочет. Поиск по дереву - это...

Ну это не обход дерева это спуск по дереву

Ruslan-Postoiuk Автор вопроса
Ilya Zviagin
Вопрос не ясен какую операцию ты Рассматриваешь?

Если мне нужно найти запись по индексу 22, я уже понял что мы спускаемся начиная с верха вниз, а что если после 22 мне нужно индекс 32, мы перескочим в правый блок или же начнем все с начала с самого верха дерева и опять вниз

Ruslan Postoiuk
Если мне нужно найти запись по индексу 22, я уже п...

с верха дерева мы спускаемся в 31+, затем в 31-40, затем в 32. дерево для того и нужно чтоб не листать элементы по порядку, а разбить их на сегменты из которых делается выбор по определённым признакам. в данном случае признаком является результат сравнения числа с диапазонами сегментов

Ruslan-Postoiuk Автор вопроса
Мертвый 🅿️
с верха дерева мы спускаемся в 31+, затем в 31-40,...

то-есть заново начинаться с верха он не будет, а просто пойдет с одного блока 21-30 на блок 31-40

Ruslan Postoiuk
то-есть заново начинаться с верха он не будет, а п...

рукалицо.... это новый поиск. ни одна компьютерная система не будет додумывать что там у тебя в голове - она будет действовать строго по алгоритму

Ruslan-Postoiuk Автор вопроса
Ruslan Postoiuk
разве нет элементво кеширования

кэшироваться может предыдущий поиск. 32 это НОВЫЙ поиск

Ruslan-Postoiuk Автор вопроса
Ruslan-Postoiuk Автор вопроса

понял, то-есть два раза мы будем начинать с самого рута

Ruslan Postoiuk
понял, то-есть два раза мы будем начинать с самого...

начинать с рута в любом случае будет быстрее чем с момента предыдущего поиска т.к. у тебя может оказаться не 32 после 22, а например 59. в результате ты будешь пролистывать подряд все блоки.

Ruslan Postoiuk
понял, то-есть два раза мы будем начинать с самого...

Собственно по индексам есть только две операции основные это позиционирование по ключу и сканирование индекса с какой-то точки которая получается после позиционирования по ключу точка то есть либо ты нашёл одну запись позиционированием по индексу то есть спуска по дереву вниз до одного ключа, либо ты сделал то же самое но потом начинаешь читать последовательно все записи в порядке индекса точка Это ещё называется Range Scan

Похожие вопросы

Обсуждают сегодня

Сonst magicTgHTML = (text, entities) => { let processedText = text; let offsetShift = 0; entities.forEach(entity => { const { offset, length, type, url, ...
Андрей
1
это группа токсиков или тех кто помогает?
Ибрагим
9
В смысле более затратная? Общая стоимость владения лошадью меньше, чем автомобиля. В среднем.
Sergej R
10
всем привет. подскажите. сделал политику, он верхнеуровневая. раздал права только на TEST2 (полные). вопрос - можно ли сделать так, чтобы был доступен только TEST2, а остально...
Андрей Сергеев
5
коллеги привет. уже второй день бьемся об заклад с одной ошибкой, может вы сталкивались с таки странным поведением? есть тестовый сервер, на который паблишим релизную версию W...
Magzhan
11
Кстати, раз про скачивание файлов разговор зашел) Сделал бота для себя (транскрибирующего и суммаризирующего встречи) но не ожидал что за 2 месяца 10к пользователей набежит😅...
Andrey Obolenskiy
8
t.me/<username> и tg://user?id=<id> отваливаются по понятным причинам
Denis 🐍|👑 | darling! 🥰
7
Вы когда из вики.... копировали, не обратили внимание на года(ы)? 😉 ==== если до 1917 года в Москве было около 15 000 легковых извозчиков, то к 1920 году их осталось 5 000, а ...
Igor Mitin
4
Слушайте, а при создании навигации на Tailor рили нельзя определять активный пункт навигации, как в Static Pages?
Pavel Lautsevich
11
На счёт замены разрабов нейронами: Вряд-ли заказчик сможет нормально пояснить нейросети, чё он хочет. Они то человеку нормально пояснить не могут, не то что нейросети. Так что...
Alex Kom
1
Карта сайта