Sıralama Algoritmaları C# | (Bubble Sort & Selection Sort & Insertion Sort)
Merhabalar!
Uzun bir aradan sonra yeni bir paylaşımla buradayım. Bu yazıda sıralama algoritmalarından Bubble Sort (Kabarcık Sıralaması), Selection Sort (Seçme Sıralaması) ve Insertion Sort (Sokma-Ekleme Sıralaması) konularını ele alacağım.
Hızlıca başlamak isterim.
1- Bubble Sort
Bu algoritmayı kısaca anlatmak gerekirse; Bubble Sort, dizinin yan yana bulunan ilk iki elemanını kıyaslama ile sıralamaya başlar. Küçük olan veriyi sola alacak şekilde yer değiştirme (swap) işlemi yapar. Bu işlemi tüm sayıları sıraya koyana kadar tekrar eder.
Aşağıda C# kodunu bulabilirsiniz.
public void bubbleSort(int []arr)
{
bool takas = true;
int j = 0;
int temp;
while (takas)
{
takas = false;
j++;
for(int i =0;i<arr.Length-j;i++)
{
if(arr[i]>arr[i+1])
{
temp = arr[i];
arr[i] = arr[i + 1];
arr[i + 1] = temp;
takas = true;
}
}
}
}
2- Selection Sort
Basitçe her adımda dizideki en küçük sayının nerede olduğu bulunur. Bu sayı ile dizinin başındaki sayı yer değiştirilerek en küçük sayılar seçilerek başa atılmış olur.
public void selectionSort(int[]arr,int n)
{
int minIndex;
int temp;
for(int i = 0; i < n; i++)
{
minIndex = i;
for (int j = i; j < n; j++)
{
if (arr[j] < arr[minIndex])
{
minIndex = j;
}
temp = arr[i];
arr[i] = arr[minIndex];
arr[minIndex] = temp;
}
}
}
3- Insertion Sort
public void insertionSort(int [] arr)
{
int i, j, Tasinan;
for (i = 1; i < arr.Length; i++)
{
Tasinan = arr[i];
j = i;
while (j > 0 && arr[j - 1] > Tasinan)
{
arr[j] = arr[j - 1];
j--;
}
arr[j] = Tasinan;
}
}
İndirme
Windows için C# tabanlı uygulamayı indirmek için tıklayınız.