Javascript Odd-Even Sort Algoritması

Herkese merhaba, Javascript yazılarımıza kaldığımız yerden devam ediyoruz. Bu yazımızda sıralama algoritmalarından olan odd-even algoritmasını anlatacağım. Hadi başlayalım !
Table of Contents
Odd-Even Algoritması Nedir ?
Odd-even sort algoritması, sıralama algoritmalarından biridir ve özellikle paralel hesaplama ortamlarında kullanılmak üzere tasarlanmıştır. Bu algoritma, bir dizi elemanı sıralamak için kullanılır ve adından da anlaşılacağı gibi, sıralama işleminde hem tek hem de çift indisli elemanlar kullanılır.
Odd-even sort algoritması, seçme sıralama (selection sort) ve kabarcık sıralama (bubble sort) algoritmalarının birleşimidir. Seçme sıralama algoritması, her adımda dizinin en küçük elemanını seçer ve başa taşırken, kabarcık sıralama algoritması, her adımda yan yana iki elemanı karşılaştırır ve doğru sıraya yerleştirir.
Odd-even sort algoritması, öncelikle bir çift indisli elemanları sıralar, ardından bir tek indisli elemanları sıralar. Bu işlem, dizinin tamamen sıralanana kadar devam eder. Algoritma, tamamen sıralanmış bir diziye sahip olduğunda durur.
Odd-Even Sort Algoritması Adımları
Odd-even sort algoritması, aşağıdaki adımları izler:
- Dizinin uzunluğu 1’e eşit olana kadar işlemleri tekrarla.
- İlk olarak, dizinin çift indisli elemanlarını sırala.
- Ardından, dizinin tek indisli elemanlarını sırala.
- Adımları tekrarla ve sıralı diziyi elde et.
Javascrit Odd-Even Sort Algoritması Kodu
Aşağıdaki örnekte, odd-even sort algoritmasını kullanarak bir dizi sıralama işlemini nasıl gerçekleştireceğimizi göstereceğim.
function oddEvenSort(arr) {
let sorted = false;
while (!sorted) {
sorted = true;
for (let i = 1; i < arr.length - 1; i += 2) {
if (arr[i] > arr[i + 1]) {
[arr[i], arr[i + 1]] = [arr[i + 1], arr[i]];
sorted = false;
}
}
for (let i = 0; i < arr.length - 1; i += 2) {
if (arr[i] > arr[i + 1]) {
[arr[i], arr[i + 1]] = [arr[i + 1], arr[i]];
sorted = false;
}
}
}
return arr;
}
const arr = [5, 3, 8, 4, 2];
console.log(oddEvenSort(arr)); // [2, 3, 4, 5, 8]
Yukarıdaki örnek kodda, odd-even sort algoritması kullanılarak bir dizi sıralama işlemi gerçekleştirilir. İlk olarak, dizi içindeki çift indisli elemanlar sıralanır, ardından tek indisli elemanlar sıralanır. Bu işlem, sıralanmış bir dizi elde edilene kadar devam eder. Döngü sırasında, sorted değişkeni kullanılarak, dizi tamamen sıralanana kadar işlem tekrar edilir.
Odd-Even Sort Algoritması Karmaşıklığı
Odd-even sort algoritmasının en kötü durumda karmaşıklığı O(n2) dir. Ancak, bazı durumlarda daha iyi sonuçlar verebilir. Algoritmanın paralel hesaplama ortamlarında kullanılması durumunda, verimliliği arttırabilir.
Sonuç
Bu makalede, odd-even sort algoritmasının ne olduğunu, nasıl çalıştığını ve JavaScript kullanarak nasıl uygulanabileceğini öğrendik. Odd-even sort algoritması, seçme ve kabarcık sıralama algoritmalarının birleşimi olarak tasarlandı ve özellikle paralel hesaplama ortamlarında kullanılmak üzere geliştirildi.
Evet Javascript ile odd-even sort algoritması bu şekilde olmakta. Tüm Javascript yazılarımıza buraya, sıralama algoritmaları yazılarımıza buraya tıklayarak ulaşabilirsiniz. Herkese hayırlı günler.