Почему требуется запрос диапазона на дереве сегмента с большинством $ \ lceil \ log_2 {n} \ RCEIL $ NUSHES?

cs.stackexchange https://cs.stackexchange.com/questions/125095

Вопрос

Если массив $ a [1 \ ldots n] $ представлен с использованием дерева сегмента, имеющего наборы в каждом интервале, почему требуется запрос диапазона $ [l \ ldots r] $ Возврат на большинстве $ \ lceil \ log_2 {n} \ rceil $ Устанавливает (или несерьезно Интервалы)?

Если наткнулся на это утверждение во время чтения Это ответа .

к цитату:

Найти непересекающееся покрытие диапазона запросов с использованием стандартного сегмента Процедура запроса дерева. Мы получаем $ O (\ log n) $ непересекающиеся узлы, объединение Чьи мультиссы это именно многосекретный значений в диапазоне запросов. Давайте назовем эти многосекрета $ s_1, \ dots, s_m $ $ m \ le \ lceil \ log_2 n \ rceil $ $ ).

Я попробовал поиск доказательства, но не смог найти его на каком-либо месте. Кто-нибудь может помочь мне доказать это?

Это было полезно?

Решение

Вот основная идея.

Пусть интервал dyadic будет интервалом формы $$ [2 ^ b a, 2 ^ b (a + 1) -1] $$ Для некоторого целого числа $ a, b \ geq 0 $ .

PRE 1. Если $ m <2 ^ n $ Тогда любой интервал формы $ [0, M-1] $ может быть записан как непересекающийся союз с большинства $ n $ dyadics.

<Сильное> Доказательство. Развернуть $ m $ как сумма уменьшения мощностей 2: $$ m= 2 ^ {a_1} + \ cdots + 2 ^ {a_k}. $$ Тогда мы можем написать $$ [0, M-1]= [0,2 ^ {a_1} -1] \ cup [2 ^ {a_1}, 2 ^ {a_1} + 2 ^ {a_2} -1] \ cup \ cdots \ чашка [2 ^ {a_1} + \ cdots + 2 ^ {a_ {k-1}}, 2 ^ {a_1} + \ cdots + 2 ^ {a_k} -1]. $$

ETS 2. Если $ 0 \ leq m_1 \ leq m_2 \ leq 2 ^ n $ Тогда любой интервал формы $ [M_1, M_2-1] $ может быть записан как непересеченный союз с большинства $ 2n $ Dyadial.

доказательство. двоичное расширение $ m_1 $ и $ m_2 $ имеет форму $ m_1= x0y, m_2= x1z $ , где $ | y |= | z | $ < / span>. Пусть $ m= x10 ^ {| z |} $ . Используя PRE 1, мы можем выразить $ [0, m_2-m-1] $ как союз с большинства $ n $ диадические интервалы. Сдвигая их через $ m $ , мы выражаем $ [m, m_2-1] $ как союз На большинстве $ n $ dyadial interplays. Аналогичным образом, используя по п.1, мы можем выразить $ [0, M-M_1-1] $ в качестве объединения с большинства $ n $ диадические интервалы. Переключение и инвертирование, мы выражаем $ [m_1, m-1] $ как союз с большинства $ n $ диадических интервалов.

(в обоих случаях нужно проверить, что переключение и, возможно, инвертируя, консерваторы интервал, являющийся дьядическим.)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с cs.stackexchange
scroll top