Kabarcık Sıralaması
Sıralama O(n²) O(1)Sıra dışı komşu elemanları tekrar tekrar takas eder; her geçişte en büyük değeri sona taşır.
23
7
41
15
3
34
9
28
8 eleman üzerinde Bubble Sort başlıyor.
DeğişmezSon 0 eleman nihai yerinde; onlardan önce daha büyük bir değer yok.
1/47
karşılaştırma0takas0i0j0
bubble-sort.c
void bubbleSort(int arr[], int n) {for (int i = 0; i < n - 1; i++) {int swapped = 0;for (int j = 0; j < n - i - 1; j++) {if (arr[j] > arr[j + 1]) {int tmp = arr[j];arr[j] = arr[j + 1];arr[j + 1] = tmp;swapped = 1;}}if (!swapped) break;}}
Kabarcık Sıralaması nasıl çalışır?
Diziyi soldan sağa tara ve sırası bozuk her komşu çifti takas et. Her geçiş kalan en büyük değeri sona taşır; sıralı sondaki bölüm her geçişte bir büyür.
En iyi durum
Zaten sıralı — tek geçiş, takas yok, swapped bayrağı erken çıkar: O(n).
En kötü durum
Ters sıralı girdi — her çift takas edilmek zorunda: O(n²) karşılaştırma ve takas.
Ne zaman kullanılır?
Yalnızca öğretim ve çok küçük girdiler; pratikte eklemeli sıralama her zaman daha iyidir.