!!! У шеренгу стали 5 учнів. Порівняйте зріст перших двох. Якщо перший вищий за другого, поміняйте їх місцями, за потреби — другого і третього і т. д. Як розмістяться учні?
Сортування обміном (або бульбашкове сортування) - це найпростіший спосіб упорядкувати масив чисел, з точки зору витрат програмних ресурсів.
Ідея сортування полягає у тому, що перебір здійснюється за списком і з порівнянням сусідніх елементів. Вони міняються місцями в тому випадку, якщо порядок неправильний. І так триває до тих пір, поки всі елементи не розташуються в потрібному порядку.
Алгоритм:
Порівнюємо два сусідніх елементи.
Якщо вони стоять не в порядку зростання, то переставляємо їх.
Повторюємо, поки всі елементи не стануть на свої місця.
Для сортування масиву з N елементів потрібен N-1 прохід , тобто достатньо поставити на свої місця N-1 елемент.
У результаті першого проходу по масиву найбільший елемент масиву стає останнім і займає своє місце в майбутньому впорядкованому масиві. Далі потрібно повторити цей процес, починаючи з першого елемента масиву. Якщо масив складається з 8 елементів, то всього потрібно зробити 7 проходів по масиву. На останньому проході свої місця займуть відразу два елементи. Після чого отримаємо впорядкований масив.
Розглянемо фрагмент проєкту для впорядкування за зростанням списку з 6 дійсних чисел, що вводяться з клавіатури, методом обміну:
Звертаємо вашу увагу:
1. Щоб впорядкувати одновимірний масив за спаданням, потрібно при порівнянні двох сусідніх елементів обмінювати їх місцями у тому випадку, якщо лівий з них менше правого з них.
2. Якщо в одновимірному масиві є рівні між собою елементи, то наведений алгоритм впорядкує його за неспаданням.
3. Метод обміну інколи називають методом «бульбашки». За аналогією з тим, як бульбашки в газованій воді спливають на поверхню, елементи одновимірного масиву «спливають» в його кінці: спочатку найбільший, потім найбільший серед тих, що залишилися і т.д.
Практичне завдання
Увага! Під час роботи з комп'ютером дотримуйтеся вимог безпеки життєдіяльності та санітарно-гігієнічних норм.
Задача 1. Складемо проєкт для впорядкування за зростанням списку з n дійсних чисел, що вводяться з клавіатури, методом обміну:
Завдання 2. Створити проєкт для сортування методом обміну за спаданням одновимірного масиву цілих чисел. Визначити, скільки разів у масиві зустрічається мінімальний елемент.
Завдання 3. Створити проєкт для сортування методом обміну за неспаданням одновимірного масиву 10 дійсних чисел.
Завдання 4. Створити проєкт для сортування методом обміну за незростанням одновимірного масиву 8 цілих чисел.