Javascript Top-Down Merge Sort Algoritması

Herkese merhaba, Javascript yazılarımıza kaldığımız yerden devam ediyoruz. Bu yazımızda sıralama algoritmalarından biri olan top-down merge sort algoritmasını anlatacağım. Hadi başlayalım !
Table of Contents
Top-down merge sort, verileri küçük parçalara ayırarak ve daha sonra birleştirerek sıralamak için kullanılan bir sıralama algoritmasıdır. Bu algoritma, verilerin ayrıştırılması ve birleştirilmesi için özyinelemeli bir işlem kullanır.
Algoritma Açıklaması
Top-down merge sort algoritması, aşağıdaki adımları takip eder:
- Verileri yarıya ayırarak küçük parçalara bölün.
- Alt parçaları tekrar yarıya ayırın, yineleyin.
- Parçaları birleştirerek sıralayın.
Kod Örneği
Aşağıdaki kod örneğinde, top-down merge sort algoritmasını uygulayan bir işlev gösterilmektedir.
function mergeSortTopDown(array) {
if (array.length <= 1) {
return array;
}
const middleIndex = Math.floor(array.length / 2);
const leftArray = array.slice(0, middleIndex);
const rightArray = array.slice(middleIndex);
return mergeTopDown(mergeSortTopDown(leftArray), mergeSortTopDown(rightArray));
}
function mergeTopDown(leftArray, rightArray) {
const sortedArray = [];
while (leftArray.length && rightArray.length) {
if (leftArray[0] <= rightArray[0]) {
sortedArray.push(leftArray.shift());
} else {
sortedArray.push(rightArray.shift());
}
}
return sortedArray.concat(leftArray.slice()).concat(rightArray.slice());
}
İşlevin Kullanımı
Örnek bir kullanım senaryosunda, işlevin aşağıdaki gibi kullanılabileceğini varsayalım:
const unsortedArray = [4, 1, 7, 3, 2, 5, 8, 6];
const sortedArray = mergeSortTopDown(unsortedArray);
console.log(sortedArray); // [1, 2, 3, 4, 5, 6, 7, 8]
Yukarıdaki kodda, unsortedArray isimli bir dizi oluşturulur ve ardından mergeSortTopDown işlevi bu diziyi sıralar. Sıralanmış dizi, sortedArray değişkenine atanır ve ardından console.log yöntemi kullanılarak çıktı olarak gösterilir.
Sonuç
Top-down merge sort algoritması, verileri küçük parçalara ayırarak ve daha sonra birleştirerek sıralayan bir sıralama algoritmasıdır. JavaScript kullanarak bu algoritmayı uygulamak oldukça basittir ve yukarıdaki kod örneği, bu işlemin nasıl gerçekleştirileceğini göstermektedir.
Evet top-down merge sort algoritması bu şekilde olmakta. Tüm Javascript yazılarımıza buraya, diğer sıralama algoritmaları ile ilgili yazılarımıza buraya tıklayarak ulaşabilirsiniz. Herkese hayırlı günler.