Содержание
- 2. Алгоритм сортировки Сортировка - это процесс упорядочения некоторого множества элементов, на котором определены отношения порядка >,
- 3. Критерии оценки алгоримов Время — основной параметр, характеризующий быстродействие алгоритма. Для типичного алгоритма хорошее поведение —
- 4. Классификация алгоритмов сортировки Устойчивость (stability) — устойчивая сортировка не меняет взаимного расположения равных элементов. Естественность поведения
- 5. Классификация по области применения Внутренняя сортировка оперирует с массивами, целиком помещающимися в оперативной памяти с произвольным
- 6. Также алгоритмы классифицируются по: потребности в дополнительной памяти или её отсутствии; потребности в знаниях о структуре
- 7. Алгоритмы устойчивой сортировки Сортировка обменная (пузырьком) (англ. Bubble sort ) — сложность алгоритма: O(n2); для каждой
- 8. Алгоритмы неустойчивой сортировки Сортировка выбором (Selection sort) — Сложность алгоритма: O(n2); поиск наименьшего или наибольшего элемента
- 9. Прочие алгоритмы сортировки Сортировка перестановкой — O(n·n!) — худшее время. Для каждой пары осуществляется проверка верного
- 10. Сортировка обменом (пузырьковая сортировка) Идея метода: шаг сортировки состоит в проходе снизу вверх по массиву. По
- 11. Пример
- 12. Пример
- 13. Сортировка «пузырьком» for (int i = 1; i for (int j = 0; j if (data[j]
- 14. Оптимизация алгоритма Запоминаем, производился ли на данном проходе какой-либо обмен. Если нет - алгоритм заканчивает работу.
- 15. Сортировка выбором Идея метода состоит в том, чтобы создавать отсортированную последовательность путем присоединения к ней одного
- 16. Пример
- 17. Сортировка вставками Идея алгоритма: Предположим последовательность a[0]...a[i] упорядочена. При этом по ходу алгоритма в нее будут
- 18. Пример
- 19. Сортировка простыми вставками 1 3 4 8 10 14 16 21 24 31 33 36 38
- 20. Сортировка Шелла Сортировка Шелла (англ. Shell sort) — алгоритм сортировки, идея которого состоит в сравнении элементов,
- 21. Сортировка Шелла 1 2 3 4 5 6 7 8 9 10 11 12 13 14
- 22. Сортировка Шелла int n ; // Длина массива int step = n; // Шаг поисков и
- 23. Быстрая сортировка Быстрая сортировка (англ. quicksort) — широко известный алгоритм сортировки, разработанный английским информатиком Чарльзом Хоаром.
- 24. Быстрая сортировка 1 3 4 8 10 14 16 21 24 31 33 36 38 42
- 25. Быстрая сортировка
- 26. Дополнения и улучшения алгоритма Первый элемент в сортируемом куске выбирается случайно и запоминается; Участки, меньшие определенного
- 27. Алгоритм слияния упорядоченных массивов 1 3 4 8 14 24 31 42 27 51 59 int
- 28. 1 3 4 8 10 14 16 21 24 31 33 36 38 42 44 50
- 29. Сортировка подсчетом Этот алгоритм подходит для сортировки целых чисел из не очень большого диапазона (сравнимого с
- 30. Сортировка подсчетом 1 3 4 8 0 4 6 1 4 1 3 6 8 2
- 31. Цифровая сортировка Цифровая сортировка — один из алгоритмов сортировки, использующих внутреннюю структуру сортируемых объектов. Алгоритм состоит
- 32. Цифровая сортировка 1 3 4 8 10 14 16 21 24 31 33 36 39 42
- 33. Алгоритмы поиска Одно из наиболее часто встречающихся в программировании действий это- поиск. Существует несколько основных вариантов
- 34. Линейный поиск Данный алгоритм является простейшим алгоритмом поиска и в отличие, например, от двоичного поиска, не
- 35. Двоичный поиск Двоичный поиск (также известен, как метод деления пополам и метод половинного деления) — алгоритм
- 36. Двоичный поиск в упорядоченном массиве 1 2 3 4 5 6 7 8 9 10 11
- 37. Библиотека STL Контейнеры Итераторы Алгоритмы Адаптеры Функциональные объекты
- 38. Алгоритмы STL STL - алгоритмы представляют набор готовых функций, которые могут быть применены к STL коллекциям
- 40. Скачать презентацию