1 / 12

Тема уроку

Тема уроку. Алгоритми впорядкування табличних величин ( м асивів). План уроку. Пошук у масиві. Вправа 14.0. Загальні поняття про впорядкуваня . Методи впорядкування елементів масиву. Демонстрація роботи методів. Приклади програми впорядкування елементів одновимірного масиву.

oona
Download Presentation

Тема уроку

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Тема уроку Алгоритми впорядкування табличних величин (масивів)

  2. План уроку • Пошук у масиві. Вправа 14.0. • Загальні поняття про впорядкуваня. • Методи впорядкування елементів масиву. • Демонстрація роботи методів. • Приклади програми впорядкування елементів одновимірного масиву. • Практична робота №15 – оцінювання. • Підсумки уроку та домашнє завдання.

  3. Як переставити елементи? Задача: поміняти місцями вміст двох чашок. 2 1 3 Задача: поміняти місцями вміст двох комірок пам’яті. y x 2 6 4 4 6 tmp= x x = y y =tmp x = y y = x 3 1 ? 4 ПЕРЕГЛЯНУТИ КОД tmp

  4. Загальні поняття про впорядкування. Розглянемо невпорядкований набір із 6 чисел: -1; 2; -3; 4; -5; 6; Питання: Як можна було б ці числа записати в порядку зростання? -5; -3; -1; 2; 4; 6; Проблема:Як описати алгоритм впорядкування за зростанням?

  5. Сортування • Сортування – це розстановка елементів масиву в заданому порядку ( по зростанню, спаданню, останній цифрі, сумі дільників, …). • Задача: переставити елементи масиву в порядку зростання. • Алгоритми: • прості і зрозумілі, проте неефективні для переважної більшості масивів • метод вибору • метод бульбашки (обміну) • складні, проте ефективні • “швидке сортування" (Quick Sort) • сортування “купою" (Heap Sort) • сортування злиттям • пірамідальне сортування

  6. Методвибору Методобміну Методвключення Методи сортування масивів Дуже часто при розв'язуванні задач, пов'язаних з обробкою масивів, необхідно виконувати сортування його елементів за зростанням або спаданням. Такі задачі мають велике практичне значення. Розглянемо деякі з методів, що дозволяють впорядкувати елементи таблиць. Методи сортування

  7. Метод вибору • Ідея: • знайти мінімальний елемент і поставити на місце першого (поміняти місцями з A[1]) • із решти знайти мінімальний елемент і поставити на друге місце (поміняти місцями з A[2]), і т.д.

  8. Метод вибору полягає в тому, що вибирається мінімальний елемент масиву, а потім виконується його обмін з першим елементом таблиці. Після цього перший елемент вважається впорядкованим і процес повторюється для підмасиву, що містить на один елемент менше за початковий, тобто елементи з 2-го до останнього. Процес повторюється кожен раз для масиву, зменшеного на один елемент. Закінчується він тоді, коли невпорядкований підмасив стає довжиною один елемент. Таким чином, загальна кількість повторень дорівнює N-1 (N - кількість елементів масиву).

  9. Метод вибору For i = 1 To 9 min = mas(i) Forj= i + 1 To 10 Ifmas(j) <= min Then min = mas(j) : nomer = j End If Next j p = mas(i) mas(i) = mas(nomer) mas(nomer) = p Next i Робота програми

  10. Метод бульбашки Ідея – бульбашка повітря в стакані води піднімається з дна вверх. Для масивів – самий маленький ("легкий") елемент переміщується вверх ("спливає"). 1-ий прохід • починаємо знизу, порівнюємо два сусідніх елементи; вони стоять “неправильно”, міняємо їх місцями • за 1 прохід по масиву один елемент (самий маленький) стає на своє місце 2-ий прохід 3-ій прохід Для сортування масиву з N елементів потрібен N-1 прохід (достатньо поставить на свої місця N-1 елемент).

  11. Метод обміну (“бульбашки”) Program Bubble; {Сортування за зростанням}Const N=20; Var Mas:array[1..N] of integer; i,j:integer; {i,j - змінні циклу} Rez:integer; {Rez - додаткова змінна для обміну елементів масиву між собою}BeginFor i:=1 to N doFor j:=1 to N-1 doIf Mas[j]>Mas[j+1] thenBegin{Обмін елементів масиву через третю змінну} Rez:=Mas[j]; Mas[j]:=Mas[j+1]; Mas[j+1]:=Rez; End; End.

  12. Домашнє завдання: • Опрацювати сторінки 255-267 • Підготуватися до тестової перевірки (розглянути та розібрати приклади ) Дякую за роботу на уроці! До нових зустрічей!!!

More Related