Метод бульбашки

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

Алгоритм В.

Задано масив елементів R1,R2,…,Rn.

Даний алгоритм реорганізує масив у висхідному порядку, тобто для його елементів буде мати місце співвідношення Ri < Rj - для всіх i,j=1..n.

В1. Цикл за індексом проходження. Повторювати кроки В2 і В3 при i=1..n-1.

В2. Ініціалізація прапорця перестановки: встановити Fl=0.,

В3. Виконання проходження. Повторювати при j=1,2,…,n-i: якщо Rj+1 <Rj, то встановити Flg=1 та переставити місцями елементи Rj<->Rj+1 , ; якщо Fl=0, то завершити виконання алгоритму.

В4. Кінець. Вихід.

Робота алгоритму Вочевидна. Перед кожним проходженням змінна Fl приймає значення нуль. Її значення аналізується в кінці кожного кроку. Якщо воно не змінилося, сортування виконане повністю. Характеристика сортування бульбашкою в гіршому випадку складає 1/2n(n-1) порівнянь і 1/2n(n-1) перестановок. Середня кількість проходжень приблизно дорівнює величині 1 ,25nÖ n. Наприклад, якщо n=10, потрібно виконати шість проходжень послідовності.

Середня кількість порівнянь і перестановок також пропорційна величині n2. Отже складність алгоритму сортування бульбашкою становить О( n2 ). Цей метод неефективний для масивів великого розміру. Існує багато модифікацій даного алгоритму.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: