Heapsort: Heaps = ~ Quicksort: BSTs = ~ Mergesort: ___?


9

Вибачте, будь ласка, лаконічність заголовка, я, можливо, приніс ясність на вівтар лаконічності.

Можна побачити, що для вставки елементів масиву у двійкове дерево пошуку та читання їх назад потрібне (при вставці) те саме порівняння, що і запуск Quicksort на цьому масиві. Послідовність поворотів, яку використовує Quicksort, - це послідовність вставок у двійкове дерево пошуку.

Це також тривіально справедливо для Heapsort і Heaport, оскільки Heapsort буквально робить таку серію вставок, а потім читає елементи назад.

Чи існує аналог цього у випадку, скажімо, Мергесорта? Чи є тут більш глибокий зв’язок чи це цікавий збіг між структурами даних та алгоритмами сортування?


1
Існує схожість між (адаптивним) MergeSort та використанням дерева вейвлетів, див. Citeseerx.ist.psu.edu/viewdoc/…
Джеремі

Відповіді:


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.