Jump to content

Геометрия бинарных деревьев поиска

В информатике один из подходов к динамической оптимальности проблеме онлайн-алгоритмов для бинарных деревьев поиска включает геометрическую переформулировку проблемы с точки зрения дополнения набора точек на плоскости как можно меньшим количеством дополнительных точек, чтобы избежать прямоугольников только с двумя точками на плоскости. их граница. [1]

Последовательность доступа и соотношение конкуренции

[ редактировать ]

В типичной формулировке проблема онлайнового двоичного дерева поиска включает в себя деревья поиска, определенные по фиксированному набору ключей. . Последовательность доступа – это последовательность ... где каждый доступ принадлежит набору ключей.

Любой конкретный алгоритм поддержки двоичных деревьев поиска (например, алгоритм расширенного дерева или структура рабочего набора Яконо ) имеет стоимость для каждой последовательности доступа, которая моделирует количество времени, которое потребуется для использования структуры для поиска каждого из ключей в последовательность доступа по очереди. Стоимость поиска моделируется исходя из предположения, что алгоритм дерева поиска имеет единственный указатель на двоичное дерево поиска, который в начале каждого поиска указывает на корень дерева. Затем алгоритм может выполнить любую последовательность следующих операций:

  • Переместите указатель на его левый дочерний элемент.
  • Переместите указатель на его правого дочернего элемента.
  • Переместите указатель на его родителя.
  • Выполните одиночный поворот дерева для указателя и его родителя.

Поиск требуется в какой-то момент внутри этой последовательности операций переместить указатель на узел, содержащий ключ, а стоимость поиска равна количеству операций, которые выполняются в последовательности. Общая стоимость затрат A ( X ) для алгоритма A в последовательности доступа X представляет собой сумму затрат на поиск каждого последующего ключа в последовательности.

Как это принято в конкурентном анализе , коэффициент конкуренции алгоритма A определяется как максимальное для всех последовательностей доступа отношение стоимости A к лучшей стоимости, которую может достичь любой алгоритм:

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

Перевод в набор геометрических точек

[ редактировать ]

С геометрической точки зрения онлайн-проблемы бинарного дерева поиска:последовательность доступа (последовательность поисков, выполняемых в бинарном дереве поиска (BST) с набором ключей ) отображается в набор точек , где ось X представляет пространство ключей, а ось Y представляет время; набор затронутых к которому добавляется узлов. Под затронутыми узлами мы подразумеваем следующее. Рассмотрим алгоритм доступа BST с одним указателем на узел дерева. В начале доступа к данному ключу , этот указатель инициализируется корнем дерева. Всякий раз, когда указатель перемещается или инициализируется на узле, мы говорим, что узел был затронут. [2] Мы представляем алгоритм BST для заданной входной последовательности, рисуя точку для каждого элемента, к которому прикасаются.

Например, предположим, что задано следующее BST на 4 узлах: Набор ключей: {1, 2, 3, 4}.

Отображение только последовательности доступа 3, 1, 4, 2.
Геометрическое представление алгоритма двоичного дерева поиска.

Пусть 3, 1, 4, 2 — последовательность доступа.

  • При первом доступе затрагивается только узел 3.
  • При втором доступе затрагиваются узлы 3 и 1.
  • В третьем доступе - перебраны 3 и 4.
  • В четвертом доступе коснитесь 3, затем 1, а после этого 2.

Касания представлены геометрически: если доступа касаются элемента x в операциях i-го точка ( x , i , то отображается ).

Древовидно удовлетворенные наборы точек

[ редактировать ]
Прямоугольник, разделенный двумя точками. Этот набор точек не древесно удовлетворен.
Это пример древесно-удовлетворительного набора точек.

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

Набор точек, содержащий точки древесно удовлетворяется тогда и только тогда, когда оно соответствует допустимому BST для входной последовательности .

Доказательство

[ редактировать ]

Сначала докажите, что набор точек для любого допустимого алгоритма BST древесно удовлетворяется.Учитывайте моменты и , где к x прикасаются в момент i, а к y прикасаются в момент j . Предположим по симметрии, что и . Нужно показать, что в прямоугольнике существует третья точка.с углами как и . Также пусть обозначаем наименьшего общего предка узлов a и b прямо перед временем t . Есть несколько случаев:

  • Если , затем используйте точку , с должно быть, коснулись, если x был.
  • Если , тогда точка можно использовать.
  • Если ни один из двух вышеперечисленных случаев не выполняется, то x должен быть предком y непосредственно перед моментом i, а y быть предком x непосредственно перед моментом j . Тогда в какой-то момент k , y должно быть повернуто выше x , поэтому точка можно использовать.

Затем покажите другое направление: учитывая древесно-удовлетворительный набор точек, можно построить действительный BST, соответствующий этому набору точек. Организуйте наш BST в треп, который к моменту следующего касания будет организован в куче. Обратите внимание, что время следующего касания имеет связи и поэтому не определяется однозначно, но это не проблема, если есть способ разорвать связи. Когда время i достигло, узлы, которых коснулись, образуют связанное поддерево вверху благодаря свойству упорядочивания кучи. Теперь назначьте новое время следующего касания для этого поддерева и преобразуйте его в новый локальный треп.Если пара узлов x и y находится на границе между затронутой и нетронутой частьюловушки, то если y нужно коснуться раньше, чем x , то является неудовлетворенным прямоугольником, потому что самая левая такая точка будет правым дочерним элементом x , а не y .

Следствие

[ редактировать ]

Поиск лучшего исполнения BST для входной последовательности эквивалентно поиску надмножества точек минимальной мощности (которое содержит входные данные в геометрическом представлении), которое удовлетворяется древесным способом. Более общая проблема поиска минимальной мощности, древесно удовлетворяющей надмножеству общего набора входных точек (не ограниченного одной входной точкой на координату y ), как известно, является NP-полной . [1]

Жадный алгоритм

[ редактировать ]

Следующий жадный алгоритм создает древесно выполнимые множества:

  • Проведите по набору точек горизонтальную линию, увеличив y . координату
  • В момент времени i поместите минимальное количество точек в чтобы поставить точку на древесно удовлетворен. Этот минимальный набор точек определен однозначно: для любого неудовлетворительного прямоугольника, образованного в одном углу, добавьте другой угол в .

Было высказано предположение, что алгоритм является оптимальным в пределах аддитивного члена. [3]

Другие результаты

[ редактировать ]

Геометрия двоичных деревьев поиска была использована для создания алгоритма, который является динамически оптимальным, если какой-либо алгоритм двоичного дерева поиска является динамически оптимальным. [4]

См. также

[ редактировать ]
  1. ^ Перейти обратно: а б Демейн, Эрик Д .; Хармон, Дион; Яконо, Джон ; Кейн, Дэниел ; Патрашку, Михай (2009), «Геометрия бинарных деревьев поиска» , В материалах 20-го ежегодного симпозиума ACM-SIAM по дискретным алгоритмам (SODA 2009) , Нью-Йорк: 496–505, doi : 10.1137/1.9781611973068.55 , ISBN  978-0-89871-680-1
  2. ^ Демейн, Эрик Д .; Хармон, Дион; Яконо, Джон ; Патрашку, Михай (2007), «Динамическая оптимальность — почти» , SIAM Journal on Computing , 37 (1): 240–251, CiteSeerX   10.1.1.99.4964 , doi : 10.1137/S0097539705447347 , MR   2306291 , S2C   ID 1480961
  3. ^ Фокс, Кайл (15–17 августа 2011 г.). Верхние границы максимально жадных бинарных деревьев поиска (PDF) . Алгоритмы и структуры данных: 12-й международный симпозиум, WADS 2011. Конспекты лекций по информатике. Том. 6844. Нью-Йорк: Спрингер. стр. 411–422. arXiv : 1102.4884 . дои : 10.1007/978-3-642-22300-6_35 .
  4. ^ Яконо, Джон (2013). «В поисках гипотезы динамической оптимальности». Компактные структуры данных, потоки и алгоритмы . Конспекты лекций по информатике. Том. 8066. стр. 236–250. arXiv : 1306.0207 . Бибкод : 2013arXiv1306.0207I . дои : 10.1007/978-3-642-40273-9_16 . ISBN  978-3-642-40272-2 . S2CID   14729858 .
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 6d7f902d183ad15c286ec0f579c114d7__1701185220
URL1:https://arc.ask3.ru/arc/aa/6d/d7/6d7f902d183ad15c286ec0f579c114d7.html
Заголовок, (Title) документа по адресу, URL1:
Geometry of binary search trees - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)