25
LOGO UNIVERSITAS INDO GLOBAL MANDIRI JL. Jend. Sudirman No. 629 Km.4 Palembang Telp. (0711) 322705 – 322706 Fax (0711) 357754 www.uigm.ac.id BAB III PENGURUTAN DATA (SORTING) Tertia Avini, S.Kom tertiaavini.wordpress.com [email protected]

UNIVERSITAS INDO GLOBAL MANDIRI JL. Jend . Sudirman No. 629 Km.4 Palembang

  • Upload
    rufus

  • View
    54

  • Download
    1

Embed Size (px)

DESCRIPTION

BAB III PENGURUTAN DATA (SORTING) Tertia Avini , S.Kom tertiaavini.wordpress.com [email protected]. UNIVERSITAS INDO GLOBAL MANDIRI JL. Jend . Sudirman No. 629 Km.4 Palembang Telp . (0711) 322705 – 322706 Fax (0711) 357754 www.uigm.ac.id. III.1. Defenisi Pengurutan. - PowerPoint PPT Presentation

Citation preview

Page 1: UNIVERSITAS INDO GLOBAL MANDIRI JL.  Jend .  Sudirman  No. 629 Km.4 Palembang

LOGOLOGOUNIVERSITAS INDO GLOBAL MANDIRI

JL. Jend. Sudirman No. 629 Km.4 Palembang

Telp. (0711) 322705 – 322706 Fax (0711) 357754

www.uigm.ac.id

BAB IIIPENGURUTAN DATA (SORTING)

Tertia Avini, [email protected]

Page 2: UNIVERSITAS INDO GLOBAL MANDIRI JL.  Jend .  Sudirman  No. 629 Km.4 Palembang

Add your company slogan

LOGOLOGO

III.1. Defenisi Pengurutan

Pengurutan (sorting) adalah sekumpulan objek yang di proses menurut urutan atau susunan tertentu.

Urutan tersebut dapat Menaik (Ascending) atau Menurun (Descending)

Data yang diurut dapat dapat berupa tipe data sederhana (kecuali boolean) atau tipe data Terstruktur

Keuntungan dari data terurut adalah mempercepat pencarian data, dapat mengetahui harga maksimun atau minimum.

UNIVERSITAS INDO GLOBAL MANDIRIJL. Jend. Sudirman No. 629 Km.4 Palembang

Telp. (0711) 322705 – 322706 Fax (0711) 357754www.uigm.ac.id

Page 3: UNIVERSITAS INDO GLOBAL MANDIRI JL.  Jend .  Sudirman  No. 629 Km.4 Palembang

Add your company slogan

LOGOLOGO

III.2. Pengurutan Internal dan Pengurutan Ekternal

Pengurutan dibagi menjadi 2 kelompok :

1. Pengurutan Internal

Pengurutan terhadap sekumpulan data yang disimpan di memori utama komputer. Bersifat sementara

2. Pengurutan Eksternal

Pengurutan data yang disimpan didalam memori sekunder.

Bersifat tetap.

UNIVERSITAS INDO GLOBAL MANDIRIJL. Jend. Sudirman No. 629 Km.4 Palembang

Telp. (0711) 322705 – 322706 Fax (0711) 357754www.uigm.ac.id

Page 4: UNIVERSITAS INDO GLOBAL MANDIRI JL.  Jend .  Sudirman  No. 629 Km.4 Palembang

Add your company slogan

LOGOLOGO

III.2. Pengurutan Internal dan Pengurutan Ekternal

Algoritma pengurutan yang ada :

1. Bubble Short (Pengurutan gelembung)

2. Maksimum Sort (Pengurutan maksimum)

3. Minimum Sort (Pengurutan minimum)

4. Insertion Sort (Pengurutan sisip)

5. Maksimum Sort (Pengurutan maksimum)

6. Head sort (pengurutan diatas)

7. shell Sort (Pengurutan )

8. Quick sort (pengurutan)

9. Merge sort (pengurutan)

10. Radix sort (pengurutan)

11. Tree sort (pengurutan pohon)

UNIVERSITAS INDO GLOBAL MANDIRIJL. Jend. Sudirman No. 629 Km.4 Palembang

Telp. (0711) 322705 – 322706 Fax (0711) 357754www.uigm.ac.id

Page 5: UNIVERSITAS INDO GLOBAL MANDIRI JL.  Jend .  Sudirman  No. 629 Km.4 Palembang

Add your company slogan

LOGOLOGO

III.2. Pengurutan Internal dan Pengurutan Ekternal

Banyaknya algoritma pengurutan yang tersedia menimbulkan pertanyaan : algoritma manakah yang memiliki kinerja paling baik?.

Kinerja pengurutan data sangatlah menentukan kinerja sistem.

Karena itu pemilihan Metode pengurutan yang cocok akan berperan penting dalam suatu aplikasi.

Pada Bab ini metode pengurutan yang akan dibahas hanya tiga yaitu

1. Pengurutan Gelembung (Bubble Sort)

2. Pengurutan Maksimum/Minimun (Maximum / Minimum Sort)

3. Pengurutan Sisip (Inserrtion Sort)

UNIVERSITAS INDO GLOBAL MANDIRIJL. Jend. Sudirman No. 629 Km.4 Palembang

Telp. (0711) 322705 – 322706 Fax (0711) 357754www.uigm.ac.id

Page 6: UNIVERSITAS INDO GLOBAL MANDIRI JL.  Jend .  Sudirman  No. 629 Km.4 Palembang

Add your company slogan

LOGOLOGO

III.3. Pengurutan gelembung (Bubble sort)

Metode pengurutan gelembung di inspirasi dari gelembung sabun yang berada di atas permukaan air

Karena berat jenis sabun lebih ringan dari pada berat jenis air, maka gelembung sabun akan selalu terapung diatas air.

Prinsip pengapungan diatas digunakan pada pengurutan gelembung. Elemen larik yang berharga paling kecil “diapungkan” artinya diangkat keatas (atau ke ujung larik) melalui pertukaran

Proses pengapungan ini dilakukan sebanyak N kali langkah.

Pada akhir setiap langkah ke K, larik L[1..N] akan terdiri dari dua bagian yang sudah terurut yaitu L[1..K] dan bagian yang belum terurut L[K+1..N].

Setelah langkah terakhir diperoleh larik L[1..N] terurut menaik

UNIVERSITAS INDO GLOBAL MANDIRIJL. Jend. Sudirman No. 629 Km.4 Palembang

Telp. (0711) 322705 – 322706 Fax (0711) 357754www.uigm.ac.id

Page 7: UNIVERSITAS INDO GLOBAL MANDIRI JL.  Jend .  Sudirman  No. 629 Km.4 Palembang

Add your company slogan

LOGOLOGO

III.3.1 Algoritma Pengurutan gelembung

Langkah 1 :

Mulai dari elemen K = N, N-1,…2, bandingkan L[K] dengan L[K-1],

jika L[K] < L[K-1], tukar L[K] dengan L[K-1]

Pada akhir langkah 1, elemen L[1] berisi harga minimum pertama.

Langkah 2 :

Mulai dari elemen K = N, N-1,…3, bandingkan L[K] dengan L[K-1], jika L[K] < L[K-1] tukar L[K] dengan L[K-1]

Pada akhir langkah 2, elemen L[2] berisi harga minimum kedua dari larik L[1..2] yang terurut.

UNIVERSITAS INDO GLOBAL MANDIRIJL. Jend. Sudirman No. 629 Km.4 Palembang

Telp. (0711) 322705 – 322706 Fax (0711) 357754www.uigm.ac.id

Page 8: UNIVERSITAS INDO GLOBAL MANDIRI JL.  Jend .  Sudirman  No. 629 Km.4 Palembang

Add your company slogan

LOGOLOGO

III.3.1 Algoritma Pengurutan gelembung

Langkah 3 :

Mulai dari elemen K = N, N-1,…4, bandingkan L[K] dengan L[K-1], jika L[K] < L[K-1] tukar L[K] dengan L[K-1]

Pada akhir langkah 3, elemen L[3] berisi harga minimum kedua

dari larik L[1..3] yang terurut.

Langkah N - 1 :

Mulai dari elemen K = N, bandingkan L[K] dengan L[K-1],

jika L[K] < L[K-1] tukar L[K] dengan L[K-1]

Pada akhir langkah N, elemen L[N] berisi harga minimum dari larik L[1..N] yang terurut.

UNIVERSITAS INDO GLOBAL MANDIRIJL. Jend. Sudirman No. 629 Km.4 Palembang

Telp. (0711) 322705 – 322706 Fax (0711) 357754www.uigm.ac.id

Page 9: UNIVERSITAS INDO GLOBAL MANDIRI JL.  Jend .  Sudirman  No. 629 Km.4 Palembang

Add your company slogan

LOGOLOGO

III.3.1 Algoritma Pengurutan gelembung

Contoh : Terdapat larik berisi dengan 5 buah elemen ( N=5) yang belum terurut. Lakukan metode Bubble Sort untuk isi larik tersebut.

UNIVERSITAS INDO GLOBAL MANDIRIJL. Jend. Sudirman No. 629 Km.4 Palembang

Telp. (0711) 322705 – 322706 Fax (0711) 357754www.uigm.ac.id

Page 10: UNIVERSITAS INDO GLOBAL MANDIRI JL.  Jend .  Sudirman  No. 629 Km.4 Palembang

Add your company slogan

LOGOLOGO

III.3.1 Algoritma Pengurutan gelembung

Akhir dari langkah 5 menghasilkan deretan data didalam larik L yang sudah terurut menaik.

UNIVERSITAS INDO GLOBAL MANDIRIJL. Jend. Sudirman No. 629 Km.4 Palembang

Telp. (0711) 322705 – 322706 Fax (0711) 357754www.uigm.ac.id

Page 11: UNIVERSITAS INDO GLOBAL MANDIRI JL.  Jend .  Sudirman  No. 629 Km.4 Palembang

Add your company slogan

LOGOLOGO

III.3.1 Algoritma Pengurutan gelembung

Untuk seluruh prosedur pengurutan pada Bab ini menggunakan Deklarasi Array sebagai berikkut :

{**Mendefenisikan struktur data**}type larik = array[1..100] of integer;var l : larik; i,n,k,temp : integer;

Prosedur untuk menginput data sebanyak N data adalah write('Banyak data yang di input : ');readln(n); for i :=1 to n do begin write ('Data ke ',i,' : ');readln(l[i]); end;

Prosedur untuk menampilkan data sebanyak data yang di input adalahwriteln;writeln('Data yang sudah terurut adalah'); for k := 1 to n do write(l[k],' '); end.

UNIVERSITAS INDO GLOBAL MANDIRIJL. Jend. Sudirman No. 629 Km.4 Palembang

Telp. (0711) 322705 – 322706 Fax (0711) 357754www.uigm.ac.id

Page 12: UNIVERSITAS INDO GLOBAL MANDIRI JL.  Jend .  Sudirman  No. 629 Km.4 Palembang

Add your company slogan

LOGOLOGO

III.3.1 Algoritma Pengurutan gelembung

Prosedur Pengurutan Gelembung

for i := 1 to n-1 do begin for k :=n downto i+1 do begin if l[k] < l[k-1] then begin {pertukaran l[k] dengan l[k-1]} temp := l[k]; l[k] := l[k-1]; l[k-1] := temp; end; end;

end;

UNIVERSITAS INDO GLOBAL MANDIRIJL. Jend. Sudirman No. 629 Km.4 Palembang

Telp. (0711) 322705 – 322706 Fax (0711) 357754www.uigm.ac.id

Page 13: UNIVERSITAS INDO GLOBAL MANDIRI JL.  Jend .  Sudirman  No. 629 Km.4 Palembang

Add your company slogan

LOGOLOGO

III.4. Pengurutan Maksimum dan minimum (Maksimum sort / Minimum Sort)

Metode pengurutan ini berdasarkan pada pemilihan nilai maksimum atau minimum didalam larik.

Gagasannya adalah memilih elemen maksimum atau minimum yang di pertukarkan pada elemen ujung larik.

Kemudian elemen ujung tersebut di isolasi untuk tidak disertakan lagi pada proses selanjutnya.

Proses yang sama diulang untuk elemen larik yang tersisa sampai data telah terurut maksimum/minmum dan tidak dapat ditukar lagi.

Metode pengurutan maksimum atau minimum disebut juga sebagai pegurutan berdasarkan pemilihan/seleksi (selection Sort)

UNIVERSITAS INDO GLOBAL MANDIRIJL. Jend. Sudirman No. 629 Km.4 Palembang

Telp. (0711) 322705 – 322706 Fax (0711) 357754www.uigm.ac.id

Page 14: UNIVERSITAS INDO GLOBAL MANDIRI JL.  Jend .  Sudirman  No. 629 Km.4 Palembang

Add your company slogan

LOGOLOGO

III.4.1 Algoritma Pengurutan Maksimum

Secara ringkas , algoritma pengurutan maksimum dinyatakan dalam urutan langkah sebagai berikut :

Langkah 1

Tentukan harga maksimum didalalam L[1..k]

Pertukarkan harga maksimum dengan elemen L[k]

Langkah 2

Tentukan harga maksimum didalalam L[1..k-1]

Pertukarkan harga maksimum dengan elemen L[k-1]

UNIVERSITAS INDO GLOBAL MANDIRIJL. Jend. Sudirman No. 629 Km.4 Palembang

Telp. (0711) 322705 – 322706 Fax (0711) 357754www.uigm.ac.id

Page 15: UNIVERSITAS INDO GLOBAL MANDIRI JL.  Jend .  Sudirman  No. 629 Km.4 Palembang

Add your company slogan

LOGOLOGO

III.4.1 Algoritma Pengurutan Maksimum

Langkah 3

Tentukan harga maksimum didalalam L[1..k-2]

Pertukarkan harga maksimum dengan elemen L[k-2]

Langkah N - 1

Tentukan harga maksimum didalalam L[1.. K-2]

Pertukarkan harga maksimum dengan elemen L[N-2]

Elemen yang tersisa adalah L[1], tidak perlu diurut lagi karena karna sudah terurut.

UNIVERSITAS INDO GLOBAL MANDIRIJL. Jend. Sudirman No. 629 Km.4 Palembang

Telp. (0711) 322705 – 322706 Fax (0711) 357754www.uigm.ac.id

Page 16: UNIVERSITAS INDO GLOBAL MANDIRI JL.  Jend .  Sudirman  No. 629 Km.4 Palembang

Add your company slogan

LOGOLOGO

III.4.1 Algoritma Pengurutan Maksimum

Contoh : tinjau larik dengan k = 6 buah elemen dibawah ini yang belum terurut. Larik ini akan diurut menaik

UNIVERSITAS INDO GLOBAL MANDIRIJL. Jend. Sudirman No. 629 Km.4 Palembang

Telp. (0711) 322705 – 322706 Fax (0711) 357754www.uigm.ac.id

Page 17: UNIVERSITAS INDO GLOBAL MANDIRI JL.  Jend .  Sudirman  No. 629 Km.4 Palembang

Add your company slogan

LOGOLOGO

III.4.1 Algoritma Pengurutan Maksimum

Akhir dari langkah 5 menghasilkan deretan data didalam larik L yang sudah terurut menaik.

UNIVERSITAS INDO GLOBAL MANDIRIJL. Jend. Sudirman No. 629 Km.4 Palembang

Telp. (0711) 322705 – 322706 Fax (0711) 357754www.uigm.ac.id

Page 18: UNIVERSITAS INDO GLOBAL MANDIRI JL.  Jend .  Sudirman  No. 629 Km.4 Palembang

Add your company slogan

LOGOLOGO

III.4.1 Algoritma Pengurutan Maksimum

Prosedur Pengurutan Maksimum Menaik u := n; for i := 1 to n-1 do begin maks := l[1]; imaks := 1; for j := 2 to u do begin if l[j] > maks then begin maks := l[j]; imaks := j; end; end; {pertukaran maks dengan l[u]} temp := l[u]; l[u] := l[imaks]; l[imaks] := temp; {larik l[u..n] terurut, larik l[1..u-1] belum terurut} u := u-1; end;

Untuk prosedur minimum, silakan anda lakukan

sendiri sebagai latihanUNIVERSITAS INDO GLOBAL MANDIRI

JL. Jend. Sudirman No. 629 Km.4 PalembangTelp. (0711) 322705 – 322706 Fax (0711) 357754

www.uigm.ac.id

Page 19: UNIVERSITAS INDO GLOBAL MANDIRI JL.  Jend .  Sudirman  No. 629 Km.4 Palembang

Add your company slogan

LOGOLOGO

III.4. Pengurutan Sisip( Insertion Sort )

Pengurutan sisip (Insertion sort) adalah metode pengurutan dengan cara menyisipkan elemen larik pada posisi yang tepat.

Pencarian posisi yang tepat dapat dilakukan dengan cara melakukan pencarian pencarian beruntun didalam larik.

Selama pencarian posisi yang tepat dilakukan pergeseran elemen larik.

UNIVERSITAS INDO GLOBAL MANDIRIJL. Jend. Sudirman No. 629 Km.4 Palembang

Telp. (0711) 322705 – 322706 Fax (0711) 357754www.uigm.ac.id

Page 20: UNIVERSITAS INDO GLOBAL MANDIRI JL.  Jend .  Sudirman  No. 629 Km.4 Palembang

Add your company slogan

LOGOLOGO

III.4.1 Algoritma pengurutan sisip menaik

Andaikan :

Misalkan L[1] dianggap sudah pada tempatnya

Langkah 2

L[2] harus dicari tempatnya yang tepat pada L[1..2] dengan cara menggeser elemen L[1..1] kekanan,

bila L[1..1] > L[2]. Misalkan posisi yang tepat adalah K, sisipkan L[2] pada L[K]

Langkah 3

L[3] harus dicari tempatnya yang tepat pada L[1..3] dengan cara menggeser elemen L[1..2] kekanan,

bila L[1..2] > L[3]. Misalkan posisi yang tepat adalah K, sisipkan L[3] pada L[K]

UNIVERSITAS INDO GLOBAL MANDIRIJL. Jend. Sudirman No. 629 Km.4 Palembang

Telp. (0711) 322705 – 322706 Fax (0711) 357754www.uigm.ac.id

Page 21: UNIVERSITAS INDO GLOBAL MANDIRI JL.  Jend .  Sudirman  No. 629 Km.4 Palembang

Add your company slogan

LOGOLOGO

III.4.1 Algoritma pengurutan sisip menaik

Langkah N

L[N] harus dicari tempatnya yang tepat pada L[1..N] , dengan cara menggeserkan elemen L[1…N-1] kekanan , bila L[1..N-1] > L[N]. Misalkan posisi yang tepat adalah K, sisipkan L[N] pada L[K]

UNIVERSITAS INDO GLOBAL MANDIRIJL. Jend. Sudirman No. 629 Km.4 Palembang

Telp. (0711) 322705 – 322706 Fax (0711) 357754www.uigm.ac.id

Page 22: UNIVERSITAS INDO GLOBAL MANDIRI JL.  Jend .  Sudirman  No. 629 Km.4 Palembang

Add your company slogan

LOGOLOGO

III.4.1 Algoritma pengurutan sisip menaik

Contoh : tinjau larik dengan N = 6 buah elemen dibawah ini yang belum terurut. Larik ini akan diurut menaik

UNIVERSITAS INDO GLOBAL MANDIRIJL. Jend. Sudirman No. 629 Km.4 Palembang

Telp. (0711) 322705 – 322706 Fax (0711) 357754www.uigm.ac.id

Page 23: UNIVERSITAS INDO GLOBAL MANDIRI JL.  Jend .  Sudirman  No. 629 Km.4 Palembang

Add your company slogan

LOGOLOGO

III.4.1 Algoritma pengurutan sisip menaik

Akhir dari langkah 5 menghasilkan deretan data didalam larik L yang sudah terurut menaik.

UNIVERSITAS INDO GLOBAL MANDIRIJL. Jend. Sudirman No. 629 Km.4 Palembang

Telp. (0711) 322705 – 322706 Fax (0711) 357754www.uigm.ac.id

Page 24: UNIVERSITAS INDO GLOBAL MANDIRI JL.  Jend .  Sudirman  No. 629 Km.4 Palembang

Add your company slogan

LOGOLOGO

III.4.1 Algoritma pengurutan sisip menaik

Prosedur Pengurutan Gelembungfor k := 1 to n do begin temp := l[k]; j := k-1;  while (temp <= l[j]) and (j>1) do begin l[j+1] := l[j];j := j -1; end;  if temp >= l[j] then l[j+1] := temp else begin l[j+1] := l[j]; l[j] := temp; end; end;

UNIVERSITAS INDO GLOBAL MANDIRIJL. Jend. Sudirman No. 629 Km.4 Palembang

Telp. (0711) 322705 – 322706 Fax (0711) 357754www.uigm.ac.id

Page 25: UNIVERSITAS INDO GLOBAL MANDIRI JL.  Jend .  Sudirman  No. 629 Km.4 Palembang

Add your company slogan

LOGOLOGO

Tugas :

1. Buatlah program Pengurutan dengan metode

a) Gelembung menaik dan menurun

b) Minimum Menaik dan menurun

c) Maksimum menaik dan menurun

d) Sisip menaik dan menurun

2. Dari metode pengurutan diatas, manakah metode yang paling baik, jelaskan.

UNIVERSITAS INDO GLOBAL MANDIRIJL. Jend. Sudirman No. 629 Km.4 Palembang

Telp. (0711) 322705 – 322706 Fax (0711) 357754www.uigm.ac.id