Sorting Algorithms

Hasan Gürel
1 min readJun 14, 2024

--

MergeSort nedir?

Divide and conquer prensibiyle çalışır. Dizi ikiye bölünerek parçalar ayrı ayrı sıralanır. Zaman karmaşıklığı O(n log n).

QuickSort nedir?

Bir pivot eleman seçilir ve dizi pivotun küçükleri ve büyükleri olarak ikiye ayrılır. Ortalama zaman karmaşıklığı O(n log n), en kötü durumda O(n²).

Bubble Sort nedir?

Sürekli iki eleman seçerek küçük olanı sola, büyük olanı sağa koyar. Zaman karmaşıklığı O(n²) en kötü ve ortalama durumda.

Insertion Sort nedir?

Her seferinde bir eleman alınır ve doğru pozisyona yerleştirilir. Zaman karmaşıklığı O(n²), ancak neredeyse sıralı dizilerde O(n).

Selection Sort nedir?

Dizinin geri kalan kısmındaki en küçük eleman seçilir ve sıralanmış kısmın sonuna eklenir. Zaman karmaşıklığı O(n²).

Heap Sort nedir?

Bir dizi önce bir heap’e dönüştürülür, ardından en büyük eleman alınır ve geri kalan kısmı yeniden heap yapılır. Zaman karmaşıklığı O(n log n).

Counting Sort nedir?

Elemanların sayısı tutulur ve sıralanmış dizi bu sayımlara göre oluşturulur. Zaman karmaşıklığı O(n + k) (k, en büyük eleman).

Radix Sort nedir?

Diziyi nodelara ayırarak her node u ayrı ayrı sıralar (genellikle Counting Sort kullanılır). Zaman karmaşıklığı O(nk) (k, nodesayısı).

Bucket Sort nedir?

Elemanlar belirli aralıklara (bucket’lara) dağıtılır ve her bucket ayrı ayrı sıralanır. Zaman karmaşıklığı O(n + k).

--

--