Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Struktur Data Oleh: Suhendro

Presentasi serupa


Presentasi berjudul: "Struktur Data Oleh: Suhendro"— Transcript presentasi:

1 Struktur Data Oleh: Suhendro
Sorting Struktur Data Oleh: Suhendro

2 Kenapa Sorting itu penting ?
Memudahkan dalam pencarian suatu item atau duplikat

3 Apa yang akan kita bicarakan ?
Array In Memory Sorting Comparison based sorting algorithm In memory sorting  item-item yang akan di-sort muat di dalam memori komputer, jadi tidak ada akses I/O ke harddisk A comparison based sorting algorithm makes ordering decisions only on the basis of comparisons

4 Penyegaran... Array  Tuliskan tipe data array of integer !
Deklarasikan array of integer yang memiliki 10 item ! Angka indeks pada array dimulai dari angka ? Diketahui int[] tmp; Bagaimana cara mengambil nilai dari array pada indeks ke-1 ? Ubahlah nilai pada indeks ke-2 dengan nilai 25 ! Jika array pada variabel tmp memiliki n item, bagaimana mengambil nilai pada indeks terakhir ? Bagaimana menukar nilai pada indeks ke-1 dengan indeks ke-2 ?

5 Penyegaran... Comparison 
Sebutkan operator untuk comparison ! Diketahui nilai a = 5, b = 10, dan c = 15. Apakah nilai dari: a < b b > c a+b <= c a-b >= a

6 Jenis-jenis Sorting

7 Bubble Sort Bayangkan gelembung udara yang bergerak ke atas hingga batas tertentu Sumber:

8 Bubble Sort 9 2. Tukar posisi 1. Nilai paling kiri/atas 3 Pilih item paling kiri/atas dari sekumpulan item yang belum terurut Bandingkan item tersebut dengan setiap item di sebelah kanan/bawah. Jika item sebelah kanan lebih kecil, maka tukar posisi. Ulangi hingga tidak ada item lagi yang belum terurut 8 Belum terurut 2 6 5

9 public static void bubbleSort (int[ ] x) { int finalSwapPos = x
public static void bubbleSort (int[ ] x) { int finalSwapPos = x.length - 1, swapPos; while (finalSwapPos > 0) swapPos = 0; for (int i = 0; i < finalSwapPos; i++) if (x [i] > x [i + 1]) swap (x, i, i + 1); swapPos = i; } finalSwapPos = swapPos;

10

11 Selection Sort 9 3 2. Tukar posisi Pilih item yang paling kecil dari sekumpulan item yang belum terurut Tukar item yang paling kecil tersebut dengan item paling kiri/atas dari bagian yang belum terurut Lakukan terus hingga semuanya terurut 8 Belum terurut 2 1. Nilai terkecil dari sekumpulan item yang belum terurut 6 5

12 public static void selectionSort (int [ ] x) {
// Make x [ i] sorted and <= x [i + 1] . . .x [x.length –1]: for (int i = 0; i < x.length –1; i++) int pos = i; for (int k = i + 1; k < x.length; k++) if (x [k] < x [pos]) pos = k; swap (x, i, pos); }

13

14 Insertion Sort Sumber:

15 Insertion Sort Algoritma sederhana, cocok untuk mengurutkan item dalam jumlah sedikit Cara kerja: Jika hanya ada satu item, maka sudah terurut (sorted) Menyisipkan (insert) item ke dalam sejumlah item yang telah terurut. Lakukan terus hingga tidak ada item yang akan disisipkan

16 Cara Kerja Insertion Sort
Disisipkan disebelah sini 8 5 9 2 6 3 terurut belum terurut

17 public static void insertionSort (int[ ] x) { for (int i = 1; i < x
public static void insertionSort (int[ ] x) { for (int i = 1; i < x.length; i++) for (int k = i; k > 0 && x [k -1] > x [k]; k--) swap (x, k, k -1); } public static void swap (int [ ] x, int a, int b) int t = x[a]; x[a] = x[b]; x[b] = t;

18

19 Sumber: http://www.sorting-algorithms.com/

20 Tugas Berdasarkan source code di dalam Slide ini, buat class untuk melakukan sorting dengan menggunakan algoritma Bubble Sort, Selection Sort, dan Insertion Sort. Dateline: Kamis, 12 Maret 2015


Download ppt "Struktur Data Oleh: Suhendro"

Presentasi serupa


Iklan oleh Google