Програмування С, С++теорія та практика (частина 1)
1.12.1 Метод бульбашкового сортування
Метод „бульбашкового сортування” ґрунтується на перестановці сусідніх елементів. Для впорядкування елементів масиву здійснюються повторні проходи по масиву.
Переміщення елементів масиву здійснюється таким чином : масив переглядається зліва направо, здійснюється порівняння пари сусідніх елементів; якщо елементи в парі розміщені в порядку зростання, вони лишаються без змін, а якщо ні - міняються місцями.
В результаті першого проходу найбільше число буде поставлено в кінець масиву. У другому проході такі операції виконуються над елементами з першого до (М-і)-ого, у третьому - від першого до (N-2)- ого і т.д. Впорядкування масиву буде закінчено, якщо при проході масиву не виконається жодної перестановки елементів масиву. Факт перестановки фіксується за допомогою деякої змінної (у наступному прикладі - із), яка на початку має значення 0 і набуває значення 1 тоді, коли виконається перестановка в якій-небудь парі.
|
Масив до впорядкування |
22 |
20 |
-1 |
-40 |
88 |
-75 |
-22 |
|
Перший перегляд масиву |
20 |
-1 |
-40 |
22 |
-75 |
-22 |
88 |
|
Другий перегляд масиву |
-1 |
-40 |
20 |
-75 |
-22 |
22 |
88 |
|
Третій перегляд масиву |
-40 |
-1 |
-75 |
-22 |
20 |
22 |
88 |
|
Четвертий перегляд масиву |
-40 |
-75 |
-22 |
-1 |
20 |
22 |
88 |
|
П'ятий перегляд масиву |
-75 |
-40 |
-22 |
-1 |
20 |
22 |
88 |
|
Рис. 1.15. Бульбашкове сортування |
сопз'Ь п=10;
іп£ а[п], і, с, із;
/* ... */ йо { із=0 ;
£ог (і=1;і<п;і++) і£ (а[і-1]>а[і])
{
с=а[і]; а[і]=а[і-1]; а[і-1]=с; із=1 ;
} ;
} мЬіІе (із);
12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
Схожі підручники
- Цивільна оборона (частина 1)
- Продажи и управление продажами Учеб. пособие для вузов (часть 2) (онлайн)
- Загальні питання з курсу Соціологія (частина 1)
- Легкий способ перестать откладывать дела на потом
- ENGLISH FOR FINANCE НАВЧАЛЬНИЙ ПОСІБНИК
- ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ В C++ (4-Е ИЗДАНИЕ) (часть 6) онлайн
