Professional Documents
Culture Documents
STRUKTUR DATA
NAMA
: ALI FAHRUDDIN
NIM
KELAS
:B
MODUL
: IV ( Pengurutan Data )
2014
BAB I
TUJUAN DAN LANDASAN TEORI
1.1 Tujuan Praktikum
1. Mengetahui implementasi beberapa metode pengurutan data.
2. Mampu menerapkan metode pengurutan data pada sebuah program.
3. Mengetahui perbandingan kompleksitas beberapa metode pengurutan data.
1.2 Landasan Teori
Pengurutan data adalah proses yang dilakukan terhadap himpunan data,
disusun sedemikian rupa sehingga diperoleh data baru terurut. Pada umumnya ada
dua macam pengurutan, yaitu : (1) pengurutan secara ascending (urut naik) dan
(2) pengurutan secara descending (urut turun). Proses pengurutan seluruh data
berada dalam memori disebut internal sorting. Sedangkan bila data tidak berada
di dalam memori disebut external sorting.
Masalah utama dalam pengurutan adalah bagaimana mendapatkan metode
terbaik yang akan memberikan jumlah operasi pemindahan data paling minimum.
Kedua operasi tersebut akan mempengaruhi algoritma pengurutan data. Umumnya
kompleksitas algoritma biasa dilihat dari waktu (time complexity) atau ruang
(space complexity).
Algoritma pengurutan data yang akan diuraikan dan dilakukan dalam
praktikum struktur data ini hanya mencakup tiga metode pengurutan data, yaitu :
(1) insertion sort (pengurutan penyisipan), (2) selection sort (pengurutan
pemilihan), dan (3) bubble sort (pengurutan gelembung). Berikut ini merupakan
penjelasannya.
1. Insertion Sort (Pengurutan Penyisipan)
Metode ini dilakukan dengan cara menyisipkan elemen larik pada posisi
yang tepat. Prinsip kerja metode ini membagi dua data sedemikian rupa sehingga
pada bagian pertama menampung data yang sudah terurut dan bagian kedua
menampung data yang belum terurut. Selanjutnya diambil satu data dari bagian
yang belum terurut dan dilakukan penyisipan ke bagian yang sudah terurut.
begin
A[imin]);
end;
end;
end;
3.
Boolean;
{True
jika
untuk
satu
terjadi pertukaran}
begin
tukar := true;
pass := 1;
while ((tukar) and (pass < N)) do
begin
Tukar := false;
for
i := N downto pass + 1 do
begin
If (A[i] < A[i-1] then
Begin
Switch (A[i], A[i-1]));
Tukar := true;
End;
End;
End;
kali
pass
End;
BAB II
LANGKAH KERJA
A. Tugas Praktikum
1. Buatlah program untuk menambah, menghapus, dan menampilkan data
dengan linear linked list dan data tersebut harus urut.
BAB III
PEMBAHASAN
Pertama-tama kita membuat nama program yang akan kita buat dalam
program pascal. Misalnya dengan nama program sorting dengan uses crt.
Setelah kita mendeklarasikan constanta nmax disini kita memberi nilai 100
yang digunakan untuk membatasi data yang masuk sampai 100. Kemudian
kita membuat type data baru berupa mahasiswa berupa record dengan isi nim
bertipe longint; nama bertipe string[30] (dengan batas 30 digit); alamat bertipe
string[50] (dengan batas 50 digit). Dan diakhiri dengan end.
Kita membuat beberapa variabel yaitu tabel bertipe array dan N bertipe
integer.
Kita menbuat procedure switch yang digunakan untuk pemilihan mana yang
akan digunakan. Procedure ini mengunkan parameter A,B bertipe mahasiswa
dan mempunyai variabel temp bertipe integer dan temp2,temp3 bertipe string.
Isi dari procedure ini meyatakan temp adalah untuk nim; temp2 adalah adalah
untuk nama; serta temp3 adalah untuk alamat. Kemudian variabel A dan B
adalah himpunan dari nim, nama , dan alamat yang di relasikan pada temp,
tmp2, dan temp3.
Isi dari procedure ini adalah pengulangan dan pemilihan diantaranya adalah
penngulangan for..do dengan syarat pass:=1 to N-1 dan didalam for..do
terdapat pengulangan for..do lagi dengan syarat i:= pass+1 to N dengan
isi
pemilihan
if..then
dengan
syarat
(tabel[min].nim
>
Isi dari procedure ini adalah terdiri dari beberapa pemilihan dan pengulangan.
Apabila tukar bernilai benar maka pass adalah 1; pengulangan while..do
dengan syarat (tukar) dan (pass < N); pengulangan for..do dengan
syarat i:=N downto pass+1 dan didalamnya terdapat pemilihan if..then
dengan syarat (tabel[i].nim < tabel[i-1]); menggeluarkan output
Pengurutan data dengan bubble sort; dan pengulangan for..do dengan syarat
i:=1 to N berisi inputan data nim, nama, dan alamat.
Isi dari procedure ini adalah melakukan pengulangan repeat..until dan berisi
pilihan menu 1/2/3/4/5 dengan menggunakan pemilihan case..of pada variabel
pilih yang digunkan untuk menginput pilihan user.
Untuk pilihan 1 adalah input yang berisi masukan jumlah data yang ingin
dimasukkkan; pengulangan for..do terhadap jumlah masukkan yang diberikan
N:=1 to data dan kemudian setiap satu data memberikan masukan data
nim, nama, dan alamat.
Untuk pilihan 5 adalah exit yang terdiri dari pemberhentian program (halt)
yang digunakan untuk mengakhiri program ini secara langsung.
Kemudian adalah program utama pada program ini yang diawali begin dan
memasukkan procedure program_utama serta diakhiri dengan end.
BAB IV
KESIMPULAN
yang tepat. Prinsip kerja metode ini membagi dua data sedemikian rupa sehingga
pada bagian pertama menampung data yang sudah terurut dan bagian kedua
menampung data yang belum terurut. Selanjutnya diambil satu data dari bagian
yang belum terurut dan dilakukan penyisipan ke bagian yang sudah terurut
2.
dalam selection sort. Pada umumnya sort, untuk meletakkan data pada posisi ke-i
dilakukan dengan mencari nilai minimum data mulai dari posisi ke-i sampai
dengan posisi ke-N dengan N adalah banyaknya data. Untuk maximum sort
dilakukan dengan menggunakan nilai maksimum
3.
BAB V
DAFTAR PUSTAKA
BAB VI
LAMPIRAN
o Coding:
o Output
Untuk menginputkan data maka kita pilih pilihan 1 maka akan muncul pesan
masukan jumlah data yang kita inginkan. Misalnya kita memberikan jumlah
data 4.
Kemudian kita masukkan 4 data tersebut sebagai contoh seperti dibawah ini.
Setelah selesai menginputkan data terdapat pilihan kembali ke menu utama
maka kita tekan Y untuk kembali ke menu utama.
Apabila kita memilih pengurutan berdasarkan Nama maka kita pilih pilihan
2. Hasilnya data yang kita masukkan akan urut berdasarkan Nama
(ascending). Untuk tidak mengurutkan lagi dengan metode insection sort maka
kita pilih T. Dan apabila kita ingin kembali ke menu utama dan mengurutkan
data menggunakan metode lain maka kita pilih Y.
Untuk mengurutkan data menggunakan metode Selection sort maka kita pilih
pilihan 3.
Jika kita ingin mengurutkan data menggunakan metode Bubble sort maka kita
pilih pilihan 4.
Maka akan muncul pilihan apakah kita ingin mengurutkan menggunakan NIM
atau menggunakan Nama. Misalnya kita ingin menggunakan NIM maka kita
pilih pilihan 1 maka hasil dari pengurutannya seperti dibawah ini secara
(ascending).