Anda di halaman 1dari 25

BASIC SORTING ALGORITHM

LOGIKA ALGORITMA
Pendahuluan
• Oxford Dictionary :
– arrange systematically in groups; separate
according to type.
• Pengurutan : proses pengurutan data yg
sebelumnya disusun secara acak sehingga
menjadi tersusun secara teratur menurut
suatu aturan tertentu
• Keuntungan :
– Mempercepat pencarian data
– Dapat mengetahui nilai maksimum dan nilai
minimum
• Jenis Pengurutan
– Ascending
– Descending
Ascending dan Descending
• Susunan secara ascending :
– L[1]≤L[2] ≤L[3] ≤…L[N]
• 23, 27, 45, 67, 100
• Amir, Badu, Budi, Dudi, Eno, Rudi
• Susunan secara descending:
– L[1]≥L[2] ≥ L[3] ≥ …L[N]
• 100, 67, 45, 27, 23
• Rudi, Eno, Dudi, Budi, Badu, Amir
Area Pengurutan
• Area pengurutan bisa terjadi secara Internal
maupun Eksternal
– Internal : Pengurutan terjadi pada memori utama
komputer.
– Eksternal : Pengurutan terjadi pada memori
sekunder.
– Pengurutan pada memori utama lebih cepat
daripad memori sekunder.
– Pengurutan pada memori utama hanya bersifat
sementara.
Algoritma Pengurutan
• BUBBLE SORT
• SELECTION SORT
• INSERTION SORT
• HEAP SORT
• SHELL SORT
• QUICK SORT
• MERGE SORT
• RADIX SORT
• TREE SORT
• ….
Bubble Sort
• Inspirasinya berasal dari
gelembung udara di air
yang berada di atas
permukaan air
• Melakukan
pembandingan antara
’data[n] dengan
data[n+1]’ atau antara
’data[n] dengan data[n-1]’
Bubble Sort
• Jika lebih kecil/besar
dilakukan pertukaran.
• Pada setiap iterasi dapat
terjadi beberapa kali
pertukaran atau tidak
sama sekali.
• Jumlah iterasi ditentukan
oleh banyaknya data atau
‘N’. Iterasi=N-1.
Langkah – Langkah Bubble Sort
1. Dimulai dari elemen paling awal.
2. 2 buah elemen pertama dari list
dibandingkan.
3. Jika elemen pertama lebih besar dari
elemen kedua,dilakukan pertukaran.
4. Langkah 2 dan 3 dilakukan lagi terhadap
elemen kedua dan ketiga, seterusnya
sampai ke ujung elemen
5. Bila sudah sampai ke ujung dilakukan lagi
ke awal sampai tidak ada terjadi lagi
pertukaran elemen.
6. Bila tidak ada pertukaran elemen lagi,
maka list elemen sudah terurut.
CONTOH BUBBLE SORT
25 27 10 8 76 21
1 2 3 4 5 6

Langkah 1:
K=N=6 21 76
K=5 8 21 76
K=4 8 10 21 76
K=3 8 27 10 21 76
K=2 8 25 27 10 21 76
CONTOH BUBBLE SORT
8 25 27 10 21 76
1 2 3 4 5 6

Langkah 2:
K=N=6 21 76
K=5 10 21 76
K=4 10 27 21 76
K=3 10 25 27 21 76
CONTOH BUBBLE SORT
8 10 25 27 21 76
1 2 3 4 5 6

Langkah 3:
K=N=6 21 76
K=5 21 27 76
K=4 21 25 27 76
CONTOH BUBBLE SORT
8 10 21 25 27 76
1 2 3 4 5 6

Langkah 4:
K=N=6 27 76
K=5 25 27 76
CONTOH BUBBLE SORT
8 10 21 25 27 76
1 2 3 4 5 6

Langkah 5:
K=N=6 27 76

8 10 21 25 27 76
1 2 3 4 5 6
procedure BubbleS (input/output L : array, input N : integer)
DEKLARASI
K : integer
I : integer
Temp : integer
DESKRIPSI
for I1 to N-1 do
for KN downto I+1 do
if L[K] < L[K-1] then
TempL[K]
L[K}L[K-1]
L[K-1]Temp
endif
endfor
endfor
Selection Sort
• Perbaikan dari metode bubble sort dengan
mengurangi jumlah perbandingan
• Gagasan dasarnya adalah memilih elemen
maksimum/minimum dari data, lalu
menempatkan elemen tersebut pada
awal/akhir posisi data.
• Kombinasi antara sorting dan searching
LANGKAH PENGURUTAN
• Lakukan proses pengurutan sebanyak N-1
• Cari elemen terbesar dari elemen ke-1
sampai elemen ke N
• Pertukarkan elemen terbesar dengan
elemen ke-1
• Kurangi N dengan satu
CONTOH SELECTION SORT
25 27 10 8 76 21
1 2 3 4 5 6

Langkah 1:
• Cari elemen maksimum di dalam array L[1..6]
• Nilai maks : L[5]=76
• Tukar maks dengan L[N]
CONTOH selection SORT
25 27 10 8 21 76
1 2 3 4 5 6

Langkah 2:
• Cari elemen maksimum di dalam array L[1..5]
• Nilai maks : L[2]=27
• Tukar maks dengan L[N-1]
CONTOH selection SORT
25 21 10 8 27 76
1 2 3 4 5 6

Langkah 3:
• Cari elemen maksimum di dalam array L[1..4]
• Nilai maks : L[1]=25
• Tukar maks dengan L[N- 2]
CONTOH selection SORT
8 21 10 25 27 76
1 2 3 4 5 6

Langkah 4:
• Cari elemen maksimum di dalam array L[1..3]
• Nilai maks : L[2]=21
• Tukar maks dengan L[N-3]
CONTOH selection SORT
8 10 21 25 27 76
1 2 3 4 5 6

Langkah 4:
• Cari elemen maksimum di dalam array L[1..2]
• Nilai maks : L[2]=10
• Pengurutan dihentikan karena L[N-4] = Nilai
maks.
TRANSITIONAL PAGE
Template Provided By

www.animationfactory.com

500,000 Downloadable PowerPoint Templates,


Animated Clip Art, Backgrounds and Videos

Anda mungkin juga menyukai