Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
OTP_labs-NEW2.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
787.97 Кб
Скачать

8 Пошук та сортування

Мета роботи: ознайомитись з методами пошуку та сортування інформації в масивах та списках, отримати практичні навички реалізації алгоритмів пошуку та сортування на мові програмування С++.

8.1 Теоретичні відомості

Сортуванням називають процес упорядкування набору елементів в залежності від значення ключа. Ключ – одна із властивостей об’єкта, яка виражається у числовій формі, над якою задані числові порівняння.

Метод вставки. Всі елементи діляться на групи: упорядковану та неупорядкованому. На першому кроці всі елементи знаходяться у неупорядкованій групі. В наступних кроках береться елемент з неупорядкованій та вставляється у відповідне місце, причому частка елементів у впорядкованій групі може зсувати. Метод підходить для сортування списків, адже операція вставки для списків є простою.

Метод перестановок. Згідно цього методу елементи також діляться на дві частинки. На кожному кроці серед неупорядкованої частинки шукається максимальний або мінімальний елемент та вставляється в кінець упорядкованої множини. Потребує (n-1)! перевірок і (n-1) перестановок.

Метод пухирця. Кількість перевірок (n-1)!, перестановок ((n-1)/2)!

Суть методу полягає, що всі елементи порівнюються зі своїми сусідами.

Якщо вони стоять у невірному порядку, що міняються місцями. На кожній операції перший елемент порівняються з другим, другий з третім і т.д. Операції продовжуються доки, поки множина не буде упорядкованою.

Методи швидкого сортування полягають в тому тому, що уся множина неупорядкованих елементів розбивається на підмножини. Вирішення задачі для кожної окремої множини вигідніше, ніж розв’язання в цілому. Алгоритм методу полягає у тому, що серед елементів знаходиться перший не мінімальний елемент. Всі елементи, що менші заданого елемента, включаються в першу підгрупу; всі елементи, що більше або дорівнюють йому, в другу. Наведенні дії повторюються для кожної групи окремо. Якщо підгрупа складається з однакових елементів, вона вважається упорядкованою.

Методи „кишенькового” сортування застосовуються, коли можливі значення елементів є обмеженими якоюсь множиною (можливі значення елементів можна перерахувати). Тоді для кожного типу елементів можна створити свою „кишеню”. Під час сортування необхідно взяти черговий елемент і помістити в відповідну кишеню. В упорядковану множину вносяться елементи з першої „кишені”, потім з другої і т.д.

8.2 Порядок виконання роботи

При виконанні лабораторної роботи дотримуйтесь рекомендованого порядку.

  1. Ознайомтесь з прикладом (листінг 8.1), наведеним у підрозділі 8.3.

  2. Отримайте від викладача варіант завдання.

  3. Розробіть схему алгоритму роботи програми.

  4. Запишіть програму на мові програмування С++.

  5. Створіть новий проект Visual Studio .NET” та введіть початковий код програми.

  6. Проведіть її компіляцію з використанням середовища “Visual Studio .NET”.

  7. Виправить синтаксичні та логічні помилки. Та повторіть компіляцію.

  8. Запустить на виконання отриманий код.

  9. Проведіть тестування для різних початкових даних.

  10. Запишіть результати роботи програми та проконтролюйте їх коректність.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]