Содержание
- 2. Задача сортировки Алгоритм сортировки — это алгоритм для упорядочивания элементов в списке. В случае, когда элемент
- 3. Характеристики сортировки Устойчивость -- элементы с равными ключами не меняются местами Локальная -- не требует дополнительной
- 4. Квадратичные сортировки Сортировка пузырьком Сортировка выбором Сортировка вставками
- 5. Сортировка слиянием
- 6. Сортировка с помощью кучи
- 7. Слияние К отсортированных массивов с помощью кучи
- 8. TimSort Массив делится на подмассивы разной длины Каждый массив сортируется вставками (или другой устойчивой сортировкой) Отсортированные
- 9. TimSort Выберем значение minrun -- минимального размера подмассива, на которые будет делиться массив (желательно, чтобы n/minrun
- 10. TimSort Начинаем процедуру слияния: Заведём стек пар {Индекс начала подмассива, Размер} Добавляем очередной подмассив Пусть X,Y,Z
- 11. Быстрая сортировка Массив a[i;j] разбивается на два подмассива a[i;k], a[k+1;j] так, что для любого x из
- 12. Быстрая сортировка Опорный элемент -- значение ключа, относительно которого разбивается массив на каждом шаге. Выбор опорного
- 13. Среднее время работы Лемма: время работы быстрой сортировки равно O(nlogn) Пусть X -- количество сравнений за
- 14. Среднее время работы Вероятность того, что zi сравнивается с zj равна вероятности того, что в множестве
- 15. Интроспективная сортировка IntroSort -- быстрая сортировка, которая переключается на пирамидальную по достижении некоторой глубины рекурсии
- 16. Поиск к-й порядковой статистики за линейное время
- 17. Нижняя оценка времени работы для сортировок сравнением Теорема: В худшем случае любой алгоритм сортировки сравнениями выполняет
- 18. Сортировка подсчётом
- 19. Карманная сортировка Разобьём массив на несколько частей так, чтобы каждая из этих частей была не больше
- 20. MSD, LSD, Сортировка строк
- 21. Binary QuickSort
- 22. Интерполяционный поиск Оптимизация бинпоиска, опирающаяся на то, что ключи распределены равномерно m = l + (r
- 23. Интерполяционная сортировка
- 24. Интерполяционная сортировка http://www.ijcte.org/papers/575-A280.pdf
- 25. Внешние сортировки Позволяют отсортировать массивы данных, которые не могут быть помещены в оперативную память
- 26. Сортировка многопутевым слиянием Пусть имеем 2Р устройств (внешних файлов) M -- количество данных, которые можем отсортировать
- 27. Сортировка многопутевым слиянием Производим многопутевое слияние первых блоков с каждого устройства, получая массивы размера M Проводим
- 28. Сортировка многопутевым слиянием Лемма. Имея P устройств и M оперативной памяти, для сортировки N элементов с
- 29. Сортировка естественным слиянием Исходный файл разбивается на P-1 файлов по принципу “пока значения элементов возрастают --
- 30. Сортирующие сети Слой сети -- множество компараторов, имеющих одинаковую глубину Глубина сети -- количество слоёв Размер
- 31. 0-1 принцип Если сортирующая сеть сортирует любую последовательность из 0 и 1 -- она сортирует все
- 32. 0-1 принцип Доказательство: Пусть сортирующая сеть сортирует все последовательности 0 и 1, но не сортирует массив
- 33. Сортирующая сеть Бэтчера Рассмотрим 0-1 битонические последовательности (имеющие вид 0^i1^j0^k или 1^i0^j1^k) Рассмотрим полуфильтр. Если ему
- 34. Сортирующая сеть Бэтчера Построим объединяющую сеть, которая будет преобразовывать две отсортированные последовательности в две битонические К
- 35. Сортирующая сеть Бэтчера Глубина сортирующей сети -- O(log^2(n)) Размер сортирующей сети -- O(nlog^2(n))
- 36. Мастер-теорема Основная теорема об асимптотических оценках устанавливает метод решения рекуррентных соотношений вида T(n) = aT(n/b) +
- 37. Мастер-теорема
- 39. Скачать презентацию