Skip to content

Commit 09101b5

Browse files
authored
Merge pull request #82 from TugayYaldiz/master
sorting eklendi.
2 parents 1011c85 + bd0a433 commit 09101b5

File tree

1 file changed

+75
-0
lines changed

1 file changed

+75
-0
lines changed

jargons/sorting.md

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
---
2+
title: sorting
3+
sameWith:
4+
- sorting algorithm
5+
tags:
6+
- genel
7+
- programlama
8+
---
9+
10+
Sorting veri öğeleri arasındaki bazı doğrusal ilişkilere dayalı, verilerin belirli bir düzene göre sıralanmasıdır. Genelde yapılacak olan aramaları kolaylaştırmak için tercih edilir. Örneğin; isimlerin karışık şekilde tutulduğu bir telefon defterinde aranan ismi bulmak, isimleri alfabetik sıraya göre dizdikten sonra bulmaktan daha uzun sürebilir. Bu yüzden verileri öncellikle sıraya koyarız.
11+
12+
Sorting çeşitli [algoritmalar](/algorithm) kullanılarak yapılabilir, bunlardan bazıları:
13+
14+
# Bubble sort
15+
16+
Her eleman bir sonraki eleman ile karşılaştırılıp büyüklük, küçüklük durumularına göre yer değiştirme gerçekleştirilir. Bu döngü sonunda liste sıralanmadıysa döngü liste sıralanana kadar tekrar edilir.
17+
18+
```c
19+
void bubleSort(int arr[], int size) {
20+
int i,j;
21+
for(i=0; i < size; i++) {
22+
for(j=1; j < size - i; j++) {
23+
if( arr[j-1] > arr[j]) {
24+
int temp = arr[j];
25+
arr[j] = arr[j-1];
26+
arr[j-1] = temp;
27+
}
28+
}
29+
}
30+
}
31+
```
32+
33+
# Selection sort
34+
35+
Her adımda dizideki en küçük eleman bulunur ve dizininin başındaki eleman bu eleman ile yer değiştirilir.
36+
37+
```c
38+
void selectionSort(int arr[], int size) {
39+
int i,j;
40+
int minimumIndex;
41+
for(i = 0; i < size; i++) {
42+
minimumIndex = i;
43+
for(j = i + 1; j < size; j++) {
44+
if( arr[j] < arr[minimumIndex] ) {
45+
minimumIndex = j;
46+
}
47+
}
48+
int temp = arr[i];
49+
arr[i] = arr[minimumIndex];
50+
arr[minimumIndex] = temp;
51+
}
52+
}
53+
```
54+
55+
# Insertion sort
56+
57+
Bu algoritmada başlangıçta bir eleman vardır. Diğer elemanlar yavaş yavaş listeye doğru pozisyonda eklenir.
58+
59+
```c
60+
void insertionSort(int arr[], int size) {
61+
int i, j;
62+
int element;
63+
for(i = 1; i < size; i++) {
64+
element = arr[i];
65+
j = i-1;
66+
while (j >= 0 && arr[j] > element) {
67+
arr[j+1] = arr[j];
68+
j--;
69+
}
70+
arr[j+1] = element;
71+
}
72+
}
73+
```
74+
75+
`Not:` Sorting algoritmaları yukarıdakiler ile sınırlı değildir. Bu algoritmalar dışında farklı bir çok sorting algoritması mevcuttur.

0 commit comments

Comments
 (0)