Quick Sort (Hızlı Sıralama) Algoritması

Quick Sort (Hızlı Sıralama) Algoritması

Karışık bir diziyi ortalama O(n.logn) çalışma süresinde sıralayan bu algoritma, 1960 yılında küçük bir İngiliz şirketi olan Elliot Brothers'ta çalışan C. A. R. Hoare tarafından geliştirilmiştir. Basitleştirilmiş kodu aşağıya ekledim.

NOT: Örneğin, kodun daha hızlı çalışması için

left - right < 32

olduğunda, daha kısa sürede sıralayan başka bir algoritmadan yararlanılabilir.

void quickSort(int arr[], int left, int right)
{
   int i = left, j = right;
   int tmp;
   int pivot = arr[(left + right) / 2];

   while (i <= j) {
     while (arr[i] < pivot)
       i++;
     while (arr[j] > pivot)
       j--;
     if (i <= j) {
       tmp = arr[i];
       arr[i] = arr[j];
       arr[j] = tmp;
       i++;
       j--;
     }
   };

   if (left < j)
     quickSort(arr, left, j);
   if (i < right)
     quickSort(arr, i, right);
}


5 yıl 1 ay önce eklendi

Peygamber efendimizin soy ağacı Bilinçli tüketici nasıl olunur? Her müslümanın bilmesi gereken sorular! Vatan Sevgisi ile ilgili şiirler Niğbolu Savaşı (1396) Dabbe nedir, Kuran'da dabbe nasıl geçer? 1 kw kaç beygir gücü eder? İşte Dünyanın En Zeki ve Yetenekli Çocukları Bilgi Felsefesi (Epistemoloji) Thomas Edison Hayatı Özdeyişler (Vecizeler) Ünlü Türk Heykeltraşları kimlerdir? Periskop nedir, Periskop nasıl yapılır? Ülkemizde ve dünyada ilk televizyon yayınları ne zaman başladı Metal, Ametal ve Yarımetal Nedir Uzunluk ölçüleri nelerdir? Metrenin katları nelerdir? Extacy nedir? Güvercin alıştırma, güvercinler nasıl alıştırılır ve eğitilir? Quick Sort (Hızlı Sıralama) Algoritması Open CV (computer vision) kütüphanesini kullanarak yüz tanıma kodu örneği
1
2
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