Anda di halaman 1dari 20

LAPORAN PRAKTIKUM

STRUKTUR DATA
MODUL 2 PENGURUTAN

DISUSUN OLEH :
MOHAMMAD HARUN ALFIRDAUS (190631100083)

LABORATORIUM SISTEM INFORMASI


PENDIDIKAN FAKULTAS ILMU PENDIDIKAN
UNIVERSITAS TRUNOJOYO MADURA
2020
BAB I
PENDAHULUAN

1.1 Tujuan
• Memahami mengenai algoritma pengurutan Insertion Sort dan
Selection Sort.
• Mampu mengimplementasikan algoritma pengurutan Insertion Sort
dan Selection Sort secara Ascending dan Descending.
BAB II
DASAR TEORI

2.1 TEORI SINGKAT


Insertion Sort
Salah satu algoritma sering yang paling sederhana adalah insertion
sort. Algoritma insertion sort pada dasarnya memilah data yang akan urutkan
menjadi 2 bagian, yang belum diurutkan dan yang sudah diurutkan. Elemen
pertama diambil dari bagian array yang belum diurutkan dan kemudian
diletakkan sesuai posisinya pada bagian lain dari array yang telah diurutkan.
Langkah ini dilakukan secara berulang hingga tidak ada lagi elemen tersisa
pada bagian array yang belum diurutkan.
Metode insertion sort merupakan metode yang mengurutkan
bilangan-bilangan yang telah terbaca, dan berikutnya secara berulang akan
menyisipkan bilangan-bilangan dalam array yang belum terbaca ke sisi kiri
array yang telah terurut.
Kita mengambil pada bilangan yang paling kiri. Bilangan tersebut
dikatakan urut terhadap dirinya sendiri karena bilangan yang dibandingkan
baru 1

Cek bilangan ke 2 (10) apakah lebih kecil dari bilangan yang ke


1(3).Apabila lebih kecil maka ditukar. Tapi kali ini bilangan ke 1 lebih kecil
dari bilangan ke 2 maka tidak ditukar.
Pada kotak warna ab u2 sudah dalam keadaan terurut. Kemudian
membandingkan lagi pada bilangan selanjutnya yaitu bilangan ke 3 (4). Bandingkan
dengan bilangan yang ada di sebelah kirinya. Pada kasus ini bilangan ke 2 bergeser
dan digantikan bilangan ke 3.

Lakukan langkah seperti di atas pada bilangan selanjutnya. 4 bilangan


pertama sudah dalam keadaan terurut relatif. Ulangi proses tersebut sampai
bilangan terakhir disisipkan.

Selection Sort
Ide utama dari algoritma selection sort adalah memilih elemen dengan nilai
paling rendah dan menukar elemen yang terpilih dengan elemen ke-i. Nilai dari i
dimulai dari 1 ke n, dimana n adalah jumlah total elemen dikurangi 1.
Cek seluruh array dan cari array yang mempunyai nilai terkecil index 8 (1). Setelah
ketemu tukar dengan array yang berada di pojok kiri (3).
Setelah di tukar bagian yang berwarna abu-abu merupakan index yang telah
terurutkan

Kemudian cari bilangan terkecil selanjutnya (selain di kotak abu-abu) yaitu


bilangan 2 dan tukar dengan sebelah array yang telah terurutkan.

Dua array sudah teruruutkan. Kemudian ulangi langkah di atas dan lakukan
langkah yang sama yaitu pilih terkecil dan tukar dengan sebelah array yang sudah
terurutkan
Bubble Sort
Setiap iterasi bubble sort dilakukan dengan cara membandingkan setiap
elemen data yang bersebelahan. Jika data yang dibandingkan tidak sesuai dengan
sifat yang diinginkan (menaik atau menurun), maka kedua data itu akan ditukar.
BAB III

IMPLEMENTASI

3.1 PELAKSANAAN PRAKTIKUM

3.1.1 PELAKSANAAN PRAKTIKUM


1. Program BubbleSort

a. Bagaimana hasil keluaran program tersebut?


b. Modifikasilah program terebut, jika masukan angka yang akan diurutkan
berasal dari keyboard
2. Program Selection Sort

a. Bagaimana hasil keluaran program 2 tersebut?


3. Program Insertion Sort

a. Bagaimana hasil keluaran program 3 tersebut?


Maka tracing yang terjadi pada program 3 (insertion Sort) dapat dilihat
sebagi berikut
3.1.2 PELAKSANAAN PRAKTIKUM DI LAP
Input

Run
Input

Run
Input
Run
2.4. TUGAS
1. Buatlah program urut turun (descending) dari program 1 (bubble sort)!

2. Buatlah algoritma dengan flowchart dari program 1 dan 2!

3. Buatlah tracing program 1 dan 2 seperti pada contoh program 3!

JAWABAN

1.
2. Flowchart program 1

start

List[]=(2,3,2,5,6,1,2,3,14,12)
Output

For (int k=l ; k<list.length

End

For(int i=0;i<list.length-k

Temp=list[i]List
[i]=list[i+1]

List[i+1]=temp
Flowchart Program 2

Start

Urut(double[]daftar

Double daftar[]=(input elemen)

Int index darimin = rendah


Salah

Urut daftar,0,daftar.length-1 End

Benar
Daftar[indexdarimin]=daftar[rendah

Daftar[rendah]

Salah Min=1

Daftar[i]<min
For(int i-rendah+l;i<=tinggi Min=1
Min=daftar[i]

Benar Benar
Salah
3. Tracing program 1 dan 2
BAB IV
PENUTUP
a. Kesimpulan
Salah satu algoritma sering yang paling sederhana adalah insertion sort. Algoritma
insertion sort pada dasarnya memilah data yang akan urutkan menjadi 2 bagian, yang belum
diurutkan dan yang sudah diurutkan. Elemen pertama diambil dari bagian array yang belum
diurutkan dan kemudian diletakkan sesuai posisinya pada bagian lain dari array yang telah
diurutkan.

Anda mungkin juga menyukai