Javascript

Javascript Shell Sort Algoritması

Herkese merhaba, Javascript yazılarımıza kaldığımız yerden devam ediyoruz. Bu yazımızda sıralama algoritmalarından olan shell sort algoritmasını anlatacağım. Hadi başlayalım !

Shell Sort Algoritması Nedir ?

Shell sort, sıralama algoritmalarından biridir. Bu algoritma, Insertion sort algoritmasının geliştirilmiş bir versiyonudur. Shell sort, büyük dizileri küçük parçalara ayırarak her parçayı ayrı ayrı sıralar. Bu sayede, dizi içindeki elemanların yerlerini değiştirerek daha hızlı bir sıralama işlemi yapar.

Shell sort, 1959 yılında Donald Shell tarafından geliştirilmiştir. Bu algoritma, Insertion sort algoritmasından daha hızlıdır. Shell sort algoritması, bir dizi içindeki elemanları aralarındaki belirli bir aralıkla karşılaştırır ve bu aralık küçültülerek elemanlar yerlerine oturana kadar sıralama işlemine devam eder.

Shell sort algoritması, Insertion sort algoritmasına benzer şekilde çalışır. İlk olarak, dizi içindeki elemanlar aralarındaki belirli bir aralıkla karşılaştırılır. Bu aralık genellikle dizi boyutunun yarısıdır. Ardından, elemanlar yerlerine oturana kadar aralık sürekli olarak küçültülür.

Javascript Shell Sort Algoritması Kodu

Aşağıda, JavaScript dilinde Shell sort algoritmasını uygulayan örnek bir kod bulunmaktadır:

function shellSort(arr) {
  let n = arr.length;
  let gap = Math.floor(n/2);
  
  while (gap > 0) {
    for (let i = gap; i < n; i++) {
      let temp = arr[i];
      let j;
      for (j = i; j >= gap && arr[j-gap] > temp; j -= gap) {
        arr[j] = arr[j-gap];
      }
      arr[j] = temp;
    }
    gap = Math.floor(gap/2);
  }
  return arr;
}

Yukarıdaki kodda, shellSort() adında bir fonksiyon tanımlanmıştır. Bu fonksiyon, bir dizi parametresi alır ve sıralanmış bir dizi döndürür.

Shell Sort Algoritması İşlem Adımları

Fonksiyon içinde, öncelikle dizinin uzunluğu hesaplanır ve bir aralık değeri (gap) belirlenir. Bu aralık, dizinin uzunluğunun yarısıdır. Ardından, bir while döngüsü ile sıralama işlemi yapılır. gap değeri 0’a eşit olana kadar döngü devam eder.

Döngü içinde, bir for döngüsü tanımlanır ve bu döngü, gap değerinden başlayarak dizi sonuna kadar devam eder. Her eleman için bir geçici değişken (temp) tanımlanır. Daha sonra, iç içe geçmiş bir for döngüsü kullanılarak elemanlar sıralanır. Bu işlem, elemanlar yerlerine oturana kadar devam eder.

Shell sort algoritması, büyük veri kümelerinde bile iyi performans gösterir ve Insertion sort algoritmasından daha hızlıdır. Ancak, diğer sıralama algoritmaları gibi en kötü durumda da zaman karmaşıklığı O(n2) olabilir.

Shell sort algoritması, birçok programlama dilinde kullanılan bir sıralama algoritmasıdır. JavaScript dilinde kullanılan Shell sort algoritması da oldukça basit ve anlaşılırdır. Bu algoritmayı kullanarak, büyük veri kümelerini hızlı bir şekilde sıralayabilirsiniz.

Evet Javascript ile shell sort algoritmasının kullanımı bu şekilde yapılmakta. Tüm Javascript yazılarımıza buraya, sıralama algoritmaları ile ilgili yazılarımıza buraya tıklayarak ulaşabilirsiniz. Herkese hayırlı günler.

Skorumuz:
Oy Vermek İçin Tıklayın
[Toplam: 0 Ortalama: 0]

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu