Hızlı Sıralama (İngilizcesi: Quicksort) günümüzde yaygın olarak kullanılan bir sıralama algoritmasıdır. Hızlı sıralama algoritması n adet sayıyı, ortalama
bir durumda, O(n x log(n)) karmaşılığıyla, en kötü durumda ise O(n2)
karmaşıklığıyla sıralar. Algoritmanın karmaşıklığı aynı zamanda yapılan karşılaştırma
sayısına eşittir.
Hızlı Sıralama algoritması 1960 yılında küçük bir İngiliz şirketi
olan Elliot Brothers'ta çalışan C. A. R. Hoare tarafından geliştirilmiştir.
Hızlı sıralama algoritması, sıralanacak bir sayı dizisini daha küçük iki parçaya
ayırıp oluşan bu küçük parçaların kendi içinde sıralanması mantığıyla çalışır.
Algoritmanın adımları aşağıdaki gibidir:
- Sayı dizisinden herhangi bir sayıyı pivot eleman olarak seç.
- Sayı dizisini pivottan küçük olan tüm sayılar pivotun önüne, pivottan büyük olan
tüm sayılar pivotun arkasına gelecek biçimde düzenle (pivota eşit olan sayılar her
iki yana da geçebilir). Bu bölümlendirme işleminden sonra eleman sıralanmış son
dizide olması gerektiği yere gelir. Algoritmanın bu aşamasına bölümlendirme
aşaması denir.
- Pivotun sol ve sağ yanında olmak üzere oluşan iki ayrı küçük sayı dizisi, hızlı sıralama algoritması bu küçük parçalar üzerinde yeniden özyineli olarak çağrılarak
sıralanır.
Algoritma içinde sayı kalmayan (eleman sayısı sıfır olan) bir alt diziye ulaştığında
bu dizinin sıralı olduğunu varsayar.