Javascript Rearrange 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 rearrange sort algoritmasını anlatacağım. Hadi başlayalım !
Table of Contents
Rearrange Sort Algoritması
Rearrange Sort algoritması, bir dizi elemanını özel bir sıraya göre yeniden düzenleyen bir algoritmadır. Bu algoritma, elemanları sıralamak yerine, belirli bir sıraya göre yeniden düzenler. Örneğin, bir dizi içindeki elemanları, belirli bir kurala göre yeniden sıralamak isteyebilirsiniz. Bu durumda Rearrange Sort algoritması, istediğiniz sıralamayı elde etmenizi sağlayacaktır.
Örneğin, bir dizi içindeki elemanların toplamının en büyük olduğu elemanı dizinin başına koymak istiyorsanız, Rearrange Sort algoritmasını kullanabilirsiniz. Bu algoritmayı kullanarak, dizinin en büyük elemanını bulabilir ve bu elemanı dizinin başına taşıyabilirsiniz. Bu işlemi, dizi içindeki tüm elemanlar için tekrar edebilirsiniz. Bu şekilde, dizi elemanlarını istediğiniz özel bir sıraya göre yeniden düzenleyebilirsiniz.
Çalışma Adımları
Rearrange Sort algoritması, bir dizi içindeki elemanları belirli bir sıraya göre yeniden düzenlemek için kullanılır. Bu algoritma, sıralama işlemi yerine elemanların yeniden düzenlenmesi işlemi gerçekleştirir. Bu nedenle, Rearrange Sort algoritması, bir sıralama algoritması değildir.
Rearrange Sort algoritması, aşağıdaki adımları izler:
- Dizinin tüm elemanlarını tarayın ve istediğiniz özel sırayı sağlamak için bir koşul belirleyin.
- Koşulu sağlayan ilk elemanı bulun ve bu elemanı dizinin başına taşıyın.
- İlk elemanı dizinin başına taşıdıktan sonra, aynı işlemi geriye kalan elemanlar için tekrar edin.
- Bu işlem, dizideki tüm elemanlar için tekrar edildiğinde, elemanlar istediğiniz özel sıraya göre yeniden düzenlenecektir.
Javascript Kodu
Aşağıda, Rearrange Sort algoritması kullanılarak bir dizi elemanını yeniden düzenleyen örnek bir JavaScript kodu verilmiştir:
// Dizi elemanlarını toplamına göre yeniden düzenleyen Rearrange Sort örneği
function rearrangeSort(arr) {
let sumArr = arr.map((num, index) => {
return { index, value: num, sum: num + index };
});
sumArr.sort((a, b) => b.sum - a.sum);
let rearrangedArr = sumArr.map((obj) => obj.value);
return rearrangedArr;
}
// Örnek kullanım
const arr = [3, 5, 2, 1, 6, 4];
console.log(rearrangeSort(arr)); // [6, 5, 4, 3, 2, 1]
Yukarıdaki kod örneğinde, Rearrange Sort algoritması kullanılarak bir dizi elemanı toplamına göre yeniden düzenlenmektedir. Algoritma, aşağıdaki adımları izler:
- Dizinin her elemanının toplamını hesaplayan bir yardımcı dizi oluşturulur.
- Yardımcı dizideki her öğe, orijinal dizideki öğenin değerini, dizideki konumunu ve toplamını içeren bir nesne olarak yeniden düzenlenir.
- Yardımcı dizi, toplamlarına göre azalan sırada sıralanır.
- Yardımcı dizideki her öğe, orijinal dizideki öğenin değerini içeren bir diziye yeniden düzenlenir.
- Yeniden düzenlenmiş dizi, Rearrange Sort algoritması tarafından istenen özel sıraya göre düzenlenir.
Yukarıdaki örnek kod, Rearrange Sort algoritmasını kullanarak bir dizi elemanını toplamına göre yeniden düzenlemektedir. Ancak, bu algoritma farklı özel sıralama kurallarına göre de uyarlanabilir. Örneğin, bir diziyi harf sırasına göre yeniden düzenlemek için Rearrange Sort algoritmasını kullanabilirsiniz. Bu durumda, dizinin elemanlarını harflere dönüştürerek ve sıralama işlemi sırasında karşılaştırmaları bu harfler arasında yaparak belirli bir özel sıraya göre yeniden düzenleyebilirsiniz.
Sonuç
Rearrange Sort algoritması, bir dizi elemanını belirli bir özel sıraya göre yeniden düzenlemek için kullanılabilir. Bu algoritma, elemanları sıralamak yerine, belirli bir sıraya göre yeniden düzenler. Bu algoritma, özellikle sayısal verilerin yer aldığı dizilerde kullanışlı olabilir. Yukarıdaki örnek JavaScript kodu, Rearrange Sort algoritmasını kullanarak bir dizi elemanını toplamına göre yeniden düzenlemektedir. Ancak, algoritma farklı özel sıralama kurallarına göre de uyarlanabilir.
Evet Javascript ile rearrange sort algoritması bu şekilde idi. Tüm Javascript yazılarımıza buraya, diğer sıralama algoritmaları yazılarımıza buraya tıklayarak ulaşabilirsiniz. Herkese hayırlı günler.