1. Oleh:
Kelompok IV
Irwan Anwar (5520111125)
Dian Silviana Dewi (5520111111)
Winda Oktami (5520111126)
Rizqi Nugraha (5520111107)
Sugih Waluya (5520111119)
Teknik Informatika
UNIVERSITAS SURYAKANCANA
2012
Algoritma Pemrograman Lanjut
2. I. PENGERTIAN
Insertion sort adalah sebuah algoritma pengurutan
yang membandingkan dua elemen data pertama,
mengurutkannya, kemudian mengecek elemen
data berikutnya satu persatu dan
membandingkannya dengan elemen data yang
telah diurutkan.
Metode Insertion Sort adalah proses pengurutan
yang dimulai dari data ke-2 sampai dengan data ke-
N, jika ditemukan data yang lebih kecil, maka akan
ditempatkan (diinsert) diposisi yang seharusnya.
Algoritma Pemrograman Lanjut
3. Kelebihan Insertion Sort:
Implementasi yang sederhana
Merupakan online algorithmic, yang berarti
bisa langsun melakukan sort setiap ada data
baru
Mangkus dalam pengelolahan data kecil
Mangkus dalam data yang sudah sebagian
terurut
Stabil.
Algoritma Pemrograman Lanjut
5. Proses
Proses dilakukan sebanyak N-1 tahapan
(dalam sorting disebut sebagai "pass").
Indeks dimulai dari 0.
proses sorting dengan cara membandingkan
data ke-i (dimana i dimulai dari data ke-2
sampai dengan data terakhir) dengan data
berikutnya.
Jika ditemukan data yang lebih kecil maka
data tersebut disisipkan ke depan sesuai
dengan posisi yang seharusnya.
Algoritma Pemrograman Lanjut
6. Contoh
Urutkan data di bawah ini secara ascending dengan metode insertion sort.
Penyelesainanya:
Pass 1 dimulai dari
kolom L[1], X=L[1]=10.
15 >X(10), maka geser
15 ke kanan.
Kemudian insert X
menggantikan 15.
Algoritma Pemrograman Lanjut
7. Lanjutan
Pass 2 dimulai dari
L[2], X=L[2]=7.
15 >7, maka geser 15 ke kanan.
10 >7,maka geser 10 ke kanan.
Kemudian insert X menggantikan
10.
Algoritma Pemrograman Lanjut
8. Lanjutan
Pass 3 dimulai dari L[3], X = L[3] = 22.
15 < 22, maka proses selesai.
Proses berlanjut sampai Pass 6.
Algoritma Pemrograman Lanjut
9. Lanjutan
Hasil tiap pass dabat di gambarkan sebagai berikut:
Algoritma Pemrograman Lanjut
10. III. Pseudocode Insertion Sort (Ascending)
procedure insertionsort(input/output A: array[0..6] of integer input N:integer)
Deklarasi
k,X,i:integer
Deskripsi
k1
while (k<=N-1)
ik
XA[i]
while (i>=1 && A[i-1]>X)
A[i] A[i-1]
ii-1
endwhile
A[i] X
kk+1
endwhile
endprocedure
Algoritma Pemrograman Lanjut