- •1 История предприятия.
- •2.Дневник
- •3. Определение алгоритма сортировки.
- •4. Оценка алгоритма сортировки
- •5. Классификация алгоритмов сортировки
- •6.1 Сортировка выбором (SelectSort)
- •6.2 Сортировка пузырьком (BubbleSort) и ее улучшения
- •6.3 Сортировка простыми вставками (InsertSort)
- •7. Сравнение времени сортировок
2.Дневник
21.05.2012 |
Ознакомительная характеристика языка С++ |
22.05.2012 |
Стандартизация языка |
23.05.2012 |
История названия |
24.05.2012 |
Философия C++ |
25.05.2012 |
Обзор языка -Необъектно-ориентированные возможности -Комментарии -Типы -Разное |
28.05.2012 |
Объектно-ориентированные особенности языка -Описание функций в теле класса -Константные функции-члены -Наследование |
29.05.2012 |
-Полиморфизм -Инкапсуляция -Друзья -Конструкторы и деструкторы -Перегрузка операторов |
30.05.2012 |
Стандартная библиотека Реализации
|
31.05.2012 |
Отличия С++ от C Новые возможности по сравнению с C C++ не включает в себя C |
01.06.2012 |
Дальнейшее развитие Ключевое слово export |
02.06.2012 |
Достоинства языка и его критика Достоинства |
02.06.2012 |
Критика -Критика синтаксиса -Критика наличия возможностей -Критика отсутствия возможностей - Критика производительности |
03.06.2012 |
Контраргументы |
04.06.2012 |
Сравнение C++ с языком Java |
3. Определение алгоритма сортировки.
Алгоритм сортировки — это алгоритм для упорядочения элементов в списке. В случае, когда элемент списка имеет несколько полей, поле, служащее критерием порядка, называется ключом сортировки. На практике в качестве ключа часто выступает число, а в остальных полях хранятся какие-либо данные, никак не влияющие на работу алгоритма.
4. Оценка алгоритма сортировки
Алгоритмы сортировки оцениваются по скорости выполнения и эффективности использования памяти:
Время сортировки - основной параметр, характеризующий быстродействие алгоритма.
Память - ряд алгоритмов требует выделения дополнительной памяти под временное хранение данных. При оценке используемой памяти не будет учитываться место, которое занимает исходный массив и независящие от входной последовательности затраты, например, на хранение кода программы.
5. Классификация алгоритмов сортировки
• Устойчивость - устойчивая сортировка не меняет взаимного расположения равных элементов. Такое свойство может быть очень полезным, если они состоят из нескольких полей, а сортировка происходит по одному из них, например, по x.
• Естественность поведения - эффективность метода при обработке уже отсортированных, или частично отсортированных данных. Алгоритм ведет себя естественно, если учитывает эту характеристику входной последовательности и работает лучше.
• Использование операции сравнения. Алгоритмы, использующие для сортировки сравнение элементов между собой, называются основанными на сравнениях. Минимальная трудоемкость худшего случая для этих алгоритмов составляет O(n log n), но они отличаются гибкостью применения. Для специальных случаев (типов данных) существуют более эффективные алгоритмы.
6. Квадратичные и субквадратичные алгоритмы
