Презентация Теорема о сложности сортировки онлайн

На нашем сайте вы можете скачать и просмотреть онлайн доклад-презентацию на тему Теорема о сложности сортировки абсолютно бесплатно. Урок-презентация на эту тему содержит всего 24 слайда. Все материалы созданы в программе PowerPoint и имеют формат ppt или же pptx. Материалы и темы для презентаций взяты из открытых источников и загружены их авторами, за качество и достоверность информации в них администрация сайта не отвечает, все права принадлежат их создателям. Если вы нашли то, что искали, отблагодарите авторов - поделитесь ссылкой в социальных сетях, а наш сайт добавьте в закладки.
Презентации » Устройства и комплектующие » Теорема о сложности сортировки



Оцените!
Оцените презентацию от 1 до 5 баллов!
  • Тип файла:
    ppt / pptx (powerpoint)
  • Всего слайдов:
    24 слайда
  • Для класса:
    1,2,3,4,5,6,7,8,9,10,11
  • Размер файла:
    0.97 MB
  • Просмотров:
    61
  • Скачиваний:
    0
  • Автор:
    неизвестен



Слайды и текст к этой презентации:

№1 слайд
Изученные ранее методы
Содержание слайда: Изученные ранее методы сортировки имели порядок сложности: О() -> О() -> О(n) Вопрос: До какого предела можно снижать трудоемкость сортировки?

№2 слайд
Теорема. Теорема. Если все
Содержание слайда: Теорема. Теорема. Если все перестановки из n элементов равновероятны, то любое дерево решений, сортирующее последовательность из n элементов, имеет среднюю высоту не менее Приведем нестрогое доказательство. Рассмотрим дерево решений для сортировки трех элементов a, b, c.

№3 слайд
Содержание слайда:

№4 слайд
Листья дерева - это все
Содержание слайда: Листья дерева - это все возможные перестановки элементов a, b, c. Листья дерева - это все возможные перестановки элементов a, b, c. Для того, чтобы узнать, какая перестановка нужна для упорядочения элементов a, b, c, достаточно сделать в некоторых случаях 2 сравнения, в других - 3 сравнения: Сср = =

№5 слайд
Сср Сср Из теории графов
Содержание слайда: Сср = = Сср = = Из теории графов известно, что длина внешнего пути двоичного дерева с m листьями D(m) ≥ m В нашем дереве листьев, поэтому Cср ≥ Cср ≥

№6 слайд
Используем нижнюю оценку для
Содержание слайда: Используем нижнюю оценку для : Используем нижнюю оценку для : > n – n Cср ≥ n – n Получаем следствие из теоремы: Не существует алгоритма сортировки n элементов, использующего в среднем менее n log2 n – n log2 e операций сравнения. Класс сложности порядка n log2 n является предельно достижимым для алгоритмов, основанных на операциях сравнения.

№7 слайд
Для пересылок Для пересылок
Содержание слайда: Для пересылок: Для пересылок: если мы определили требуемую перестановку и имеем память для второй копии массива, то достаточно сделать n пересылок. На сегодняшний день алгоритм, имеющий n log2 n сравнений и n пересылок, неизвестен. Рассмотрим метод сортировки, самый быстрый из известных.

№8 слайд
Метод Хоара Hoare, QuickSort
Содержание слайда: Метод Хоара (Hoare, 1962) QuickSort Возьмем произвольный элемент массива, обозначим его через Х. Просматривая массив слева, найдем элемент ai ≥ x. Просматривая массив справа, найдем элемент aj ≤ x. ai ≥ x i j aj ≤ x ≤x ≥x Поменяем местами ai и aj. Будем продолжать процесс просмотра и обмена, пока i не станет больше j. В результате массив окажется разделенным на две части: левую с элементами ≤x, и правую с элементами ≥x. Затем к каждой части будем применять тот же алгоритм.

№9 слайд
Метод Хоара QuickSort
Содержание слайда: Метод Хоара (QuickSort) Алгоритм на псевдокоде L, R – левая и правая границы рабочей части массива   QuickSort ( L, R ) х := аL, i := L, j := R DО ( ij ) DО ( ai < x) i := i+1 OD DО ( aj > x) j := j-1 OD IF ( i<=j ) ai↔aj,, i := i+1, j := j -1 FI OD IF ( L<j ) QuickSort ( L, j ) FI IF ( i<R ) QuickSort ( i, R) FI

№10 слайд
К У Р А П О В А Е К У Р А П О
Содержание слайда: К У Р А П О В А Е К У Р А П О В А Е Е У Р А П О В А К Е А Р А П О В У К Е А В А П О Р У К Е А В А

№11 слайд
А А В Е А А В Е А А В А А В А
Содержание слайда: А А В Е А А В Е А А В А А В А В

№12 слайд
П О Р У К П О Р У К К О Р У П
Содержание слайда: П О Р У К П О Р У К К О Р У П К О Р У П П У Р У Р Р У

№13 слайд
Трудоемкость алгоритма
Содержание слайда: Трудоемкость алгоритма QuickSort существенно зависит от того, как соотносится выбираемый элемент Х с остальными элементами в массиве. Трудоемкость алгоритма QuickSort существенно зависит от того, как соотносится выбираемый элемент Х с остальными элементами в массиве. Рассмотрим два крайних случая: 1) Х = min(max) (aL ,…, aR) В этом случае после разделения в одной части массива будет оставаться только один элемент, а в другой части - все остальные. C1 = (n+2)+(n+1)+…+2 = M1 = 3(n-1) Трудоемкость в этом случае сравнима с методом прямого выбора: O(n2), n∞

№14 слайд
Х med aL , , aR медиана Х med
Содержание слайда: 2) Х = med (aL ,…, aR) – медиана 2) Х = med (aL ,…, aR) – медиана Определение. Элемент am называется медианой для элементов aL ,…, aR , если количество элементов меньших am равно количеству элементов больших am (с точностью до одного элемента). В примере буква К – медиана для КУРАПОВАЕ. В этом случае массив разделяется на две равные части. Определим наименьшее возможное количество сравнений. Возьмем для примера n = 15 (степень двойки), затем массив делится на 7 и 7, затем на 3,3,3,3. Всего потребуется 3 итерации.

№15 слайд
Пример. X Х Х Х Х Х Х n - n -
Содержание слайда: Пример. X Х Х Х Х Х Х n =-1 n = -1 => k = Из таблицы k = 4, 3 = к-1 - количество итераций. C = (k-1) = ( log(n+1) - 1) = (n+1) log(n+1) - (n+1) – близкое к минимально возможному значению.

№16 слайд
Итак, количество сравнений C
Содержание слайда: Итак, количество сравнений C = n log n Итак, количество сравнений C = n log n Количество пересылок зависит от расположения элементов, но не может быть больше одного обмена (3 пересылки) на два сравнения. Поэтому количество пересылок – величина того же порядка, что и количество сравнений: М = n log n. Средняя трудоемкость QiuckSort: O (n log n), n∞

№17 слайд
Проблема глубины рекурсии В
Содержание слайда: Проблема глубины рекурсии В теле подпрограммы доступны все объекты, описанные в основной программе, в том числе и имя самой подпрограммы. Это позволяет внутри тела подпрограммы осуществлять вызов самой подпрограммы. Определение. Процедуры и функции, организующие вызовы «самих себя» называются рекурсивными. Многие математические алгоритмы используют рекурсию, поэтому рекурсия широко используется в программировании. Пример: Известный алгоритм вычисления факториала неотрицательного целого числа: 0! = 1, 1! = 1, n! = (n-1)! n. long fact (int n) { if (n<0) return 0; if (n==0) return 1; return (n*fact(n-1)); }

№18 слайд
Вычисление ! fact fact fact
Содержание слайда: Вычисление 4! fact (4) (((1*1)*2)*3)*4 fact(3) ((1*1)*2)*3 fact(2) (1*1)*2 fact(1) 1*1 fact(0) 1 Рекурсивное выполнение программы более компактно и наглядно, но существует опасность переполнения стека.

№19 слайд
Содержание слайда:

№20 слайд
Содержание слайда:

№21 слайд
Вместо двух рекурсивных
Содержание слайда: Вместо двух рекурсивных вызовов Вместо двух рекурсивных вызовов (для левой и правой части массива) будем использовать только один рекурсивный вызов, а другой заменим новой итерацией цикла. Вопрос: Для какой части массива нужно делать рекурсивный вызов, чтобы уменьшить глубину рекурсии? Ответ: Для меньшей по размеру части массива. !-------------!--------------------------------! L J I R

№22 слайд
Алгоритм на псевдокоде
Содержание слайда: Алгоритм на псевдокоде Алгоритм на псевдокоде QuickSort(L,R) (вторая версия) DO ( L<R ) <Разделение на две части> IF ( j-L < R-i ) QuickSort( L, j ), L := i ELSE QuickSort( i, R ), R := j FI OD В этом случае худший вариант, когда обе части массива равны, тогда глубина рекурсии Пример: для массива из 1 млн. элементов ( n = 1000000 ) понадобится одновременно менее 20 фреймов в памяти.

№23 слайд
Примеры рекурсии
Содержание слайда: Примеры рекурсии Преподаватель всегда прав. Если преподаватель не прав, смотри пункт 1. Бюрократия разрастается, чтобы удовлетворить нужды разрастающейся бюрократии. Смысл жизни – в достижении её цели, цель жизни – в наполнении ее смыслом. Если у вас украли кредитную карту, позвоните по телефону указанному на оборотной стороне кредитной карты. Для выхода в Интернет, скачайте нашу программу из Интернета. Keyboard not found. Press F1 to continue. Салат : помидоры, огурцы, салат.

№24 слайд
Содержание слайда:

Скачать все slide презентации Теорема о сложности сортировки одним архивом: