0.16. Insertion Search PDF
0.16. Insertion Search PDF
Oleh:
HENDRAWATY, ST., MT.
i
LABORATORIUM : TELEMATIKA
POLITEKNIK NEGERI LHOKSEUMAWE
PENGUJIAN : INSERTION SORT ALGORITHM
I. Capaian Praktikum/Kompetensi
III. Teori
1
berada pada indeks 0. kemudian meng-insert nilai yang dibandingkan ke posisi yang
seharusnya. Perhatikan langkah-langkah dibawah ini. Misalkan terdapat sebuah
larik/array yang memiliki 5 buah elemen, seperti tampak pada Gambar 1.
Indeks 0 1 2 3 4
30 10 40 20 50
Elemen 1 2 3 4 5
1. Simpan nilai pada indeks 1 ke variable sementara temp. L[1] = 10, temp =
L[1], maka temp = 10.
2. Bandingkan nilai temp dengan nilai pada indeks 0 ( indeks yang terletak di sisi
kiri indeks 1).
temp < L[0]
10 < 30 jawabannya benar.
Jika benar, maka nilai 30 dipindahkan atau dicopy ke indeks yang ada
disebelah kanannya, yaitu indeks 1. Sehingga hasilnya menjadi seperti pada
gambar 2.
Indeks 0 1 2 3 4
30 30 40 20 50
Elemen 1 2 3 4 5
2
Iterasi ke-2, dimulai dari indeks = 2.
Indeks 0 1 2 3 4
10 30 40 20 50
Elemen 1 2 3 4 5
Gambar 4. Elemen larik/array pada awal iterasi ke-2
1. Simpan isi indeks 2 ke variable temp. L[2] = 40, temp=L[2], maka temp = 40.
2. Bandingkan nilai temp dengan nilai indeks 1.
temp < L[1]
40 < 30 jawabannya salah.
Jika salah, maka tidak ada perpindahan. Sehingga elemen larik/array tetap:
Indeks 0 1 2 3 4
10 30 40 20 50
Elemen 1 2 3 4 5
Gambar 5. Elemen array saat logika temp < L[1] bernilai salah
Jika kondisi dari temp < L[1] salah, maka temp tidak perlu dibandingkan lagi
dengan L[0], karena L[0] dan L[1] sudah terurut. Sehingga hasil dari iterasi
ke-2 adalah:
Indeks 0 1 2 3 4
10 30 40 20 50
Elemen 1 2 3 4 5
Indeks 0 1 2 3 4
10 30 40 20 50
Elemen 1 2 3 4 5
Gambar 7. Elemen larik/array pada awal iterasi ke-3
3
2. Bandingkan nilai temp dengan nilai pada indeks 2. temp < L[2]
20 < 40 jawabannya benar.
Gambar 10. Elemen Array saat logika temp < L[0] bernilai salah
4
Iterasi ke-4, dimulai dari indeks = 4.
Indeks 0 1 2 3 4
10 20 30 40 50
Elemen 1 2 3 4 5
1. Simpan nilai pada indeks 4 ke variable sementara temp. L[4] = 50, temp=L[4],
maka temp = 50.
2. Bandingkan nilai temp dengan nilai pada indeks 3 ( indeks yang terletak di sisi
kiri indeks 4).
temp < L[3]
50 < 40 jawabannya salah.
Jika salah, maka tidak ada perubahan atau perpindahan. Sehingga elemen pada
larik/array menjadi tetap:
Indeks 0 1 2 3 4
10 20 30 40 50
Elemen 1 2 3 4 5
Gambar 13. Elemen array saat logika temp < L[3] bernilai salah
Jika kondisi dari temp < L[3] salah, maka temp tidak perlu dibandingkan lagi
dengan L[2], L[1], dan L[0]. karena sudah terurut. Sehingga hasil dari iterasi
ke-4 adalah:
Indeks 0 1 2 3 4
10 20 30 40 50
Elemen 1 2 3 4 5
IV. Alat/Bahan
1. Komputer Pribadi (Personal Computer)
2. Perangkat Lunak Dev-C++, gcc, vim atau pico
5
V. Prosedur Praktikum
Buat program seperti tugas diatas dan hasil eksekusinya dalam borang berikut;
No
Program (Source Code) Hasil (Output)
Perc.
1.
2.
3.
4.
1. Analisa hasil dari eksekusi program diatas, berikan maksud dari setiap baris
program yang diberikan.
2. Dari hasil percobaan yang dilakukan, buat kesimpulan dari masing-masing
percobaan diatas.
Jain, H. (2017). Problem Solving in Data Structures & Algorithms Using C. Bhopal,
India.
Tutorialspoint. (2016). Data Structures & Algorithms Simply Easy Learning, Tutorial
points Ltd, www.tutorialspoint.com.
6