Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Algoritma Sorting (Selection – Insertion)

Presentasi serupa


Presentasi berjudul: "Algoritma Sorting (Selection – Insertion)"— Transcript presentasi:

1 Algoritma Sorting (Selection – Insertion)

2 Algoritma Insertion Sort
Dengan Algoritma Insertion bagian kiri array terurut sampai seluruh array Misal pada data array ke-k, data tersebut akan disisipkan pada indeks sebelum k, sesuai dengan urutannya. Proses ini dilakukan berulang-ulang sehingga seluruh data terurut

3 Algoritma Insertion Sort
2. selama (i < N) kerjakan baris 3 sampai dgn 9 3. key  A[i] 4. j  i – 1 5. selama j >= 0 dan (A[j] > key) kerjakan baris 6 dan 7 6. A[j + 1]  A[j] 7. j  j – 1 8. A[j+1]  key 9. i  i + 1 C = Comparison M = Move M = Move

4 Proses Insertion Sort 3 10 4 6 8 9 7 2 1 5 Nilai yang paling kiri (3) terurut terhadap dirinya sendiri. Sehingga kita tidak perlu melakukan apa-apa

5 3 10 4 6 8 9 7 2 1 5 3 10 4 6 8 9 7 2 1 5 Key = 10 Cek apakah nilai pada indek ke-2 (10) lebih kecil dari indek ke-1 (3). Jika ya maka tukar. Kondisi diatas maka data tidak perlu diswap

6 Dua data pertama sudah terurut
3 10 4 6 8 9 7 2 1 5 Dua data pertama sudah terurut 3 10 4 4 6 8 9 7 2 1 5 Selanjutnya menyisipkan 4 di daerah abu-abu sehingga setelah penyisipan daerah abu-abu menjadi urut.

7 Simpan nilai yang akan diurutkan dalam variabel key
C C = Comparison 4 3 10 6 8 9 7 2 1 5 Nilai 10 digeser pada indek ke-3 4 M = Move M 3 10 6 8 9 7 2 1 5 Sisipkan 4 pada posisi yang tepat 3 4 10 6 8 9 7 2 1 5

8 Sekarang 3 data pertama sudah terurut secara relatif dan sisipkan data ke-4 ke daerah abu-abu. 4 Data pertama sudah terurut secara relatif 3 4 6 10 8 9 7 2 1 5 Ulangi Proses ini sampai data terurut semuanya. 3 4 6 8 10 9 7 2 1 5 3 4 6 8 9 10 7 2 1 5

9 7 3 4 6 2 1 5 8 9 10 3 4 6 7 8 9 10 2 1 5 2 3 4 6 7 8 9 10 1 5 1 2 3 4 6 7 8 9 10 5 1 2 3 4 5 6 7 8 9 10

10 Analisa Insertion Sort
Basic Operation (Operasi Dasar) terdapat pada perbandingan key (A[j] > key)

11 Analisa Insertion Sort Best Case
- Array sudah dalam keadaan terurut naik - Data ke-k yang akan diurutkan dibandingkan sebanyak satu kali dengan data ke- (k-1) - Loop terdalam tidak pernah dieksekusi - Jumlah pergeseran (movement)  M = 0 - Jumlah pembandingan key (comparison) C = n – 1

12 Worst Case: - Array dalam urutan kebalikannya
- Loop terdalam dieksekusi sebanyak p-1 kali, untuk p = 2,3,..,n - Jumlah pergeseran M = (n-1) + ( n-1) M = (n-1) + n * ( n-1)/2 Jumlah pembandingan key C = ( n-1) = n * (n-1) / 2

13 Selection Sort

14 Algoritma Selection Sort
selama (i < N-1) kerjakan baris 3 sampai dengan 11 min  i  j  i + 1 Selama (j < N) kerjakan baris 6 dan 7 Jika (A[j] < A[min]) maka min  j  j  j + 1 temp = A[i] A[i] = A[min] A[min] = temp  i  i + 1

15 Selection Sort Algorithm
Min = 0 j = 1 (A[j] < A[min]) ? min  j  Perbandingan diawali pada dat indeks ke-0. Dibandingkan dengan data sesudahnya untuk mencari elemen yang paling kecil (menggunakan indeks data) 61 52 45 21 15 9 [0] [1] [2] [3] [4] [5] Slide copyright Pearson Education 2002

16 Selection Sort Algorithm – 1
Min = 0 j = 1 21 < 45 min = 1 Data ke-0 dibandingkan dengan data ke-1. Ternyata data min pada indeks ke-1 (min=1) 61 52 45 21 15 9 [0] [1] [2] [3] [4] [5] Slide copyright Pearson Education 2002

17 Selection Sort Algorithm – 2
Min = 1 j = 2 52 < 21 min = 1 Data ke1 dibandingkan dengan Data ke-2. Nilai yang paling kecil tetap pada data indeks ke-1 61 52 45 21 15 9 [0] [1] [2] [3] [4] [5] Slide copyright Pearson Education 2002

18 Selection Sort Algorithm – 3
Min = 1 j = 3 61 < 21 min = 1 Data ke1 dibandingkan dengan Data ke-3 61 52 45 21 15 9 [0] [1] [2] [3] [4] [5] Slide copyright Pearson Education 2002

19 Selection Sort Algorithm – 4
Min = 1 j = 4 9 < 21 min = 4 Data ke1 dibandingkan dengan Data ke-4. Data yang paling kecil sekarang pada data indeks ke-4 (min =4) 61 52 45 21 15 9 [0] [1] [2] [3] [4] [5] Slide copyright Pearson Education 2002

20 Selection Sort Algorithm – 5
Min = 4 j = 5 15< 9 min = 4 Data ke-4 dibandingkan dengan Data ke-5 61 52 45 21 15 9 [0] [1] [2] [3] [4] [5] Slide copyright Pearson Education 2002

21 Selection Sort Algorithm – 2
Diawali dengan mencari elemen yang paling kecil Tukar elemen yang paling kecil dengan Data indeks ke-0 [0] [1] [2] [3] [4] [5] Slide copyright Pearson Education 2002

22 Selection Sort Algorithm – 3
Diawali dengan mencari elemen yang paling kecil Tukar elemen yang paling kecil dengan Data indeks ke-0 [0] [1] [2] [3] [4] [5] Slide copyright Pearson Education 2002

23 Selection Sort Algorithm – 4
Sudah terurut Belum terurut Bagian dari Data yang sudah terurut [0] [1] [2] [3] [4] [5] Slide copyright Pearson Education 2002

24 Selection Sort Algorithm – 5
Sudah terurut Belum terurut Cari elemen terkecil pada bagian yang belum terurut [0] [1] [2] [3] [4] [5] Slide copyright Pearson Education 2002

25 Selection Sort Algorithm – 6
Sudah terurut Belum terurut Diawali dengan mencari elemen yang paling kecil Tukar dengan data paling depan pada daerah yang belum terurut [0] [1] [2] [3] [4] [5] Slide copyright Pearson Education 2002

26 Selection Sort Algorithm – 7
Sudah terurut Belum terurut Dua data telah terurut [0] [1] [2] [3] [4] [5] Slide copyright Pearson Education 2002

27 Selection Sort Algorithm – 8
Sudah terurut Belum terurut Elemen terkecil Proses dilanjutkan [0] [1] [2] [3] [4] [5] Slide copyright Pearson Education 2002

28 Selection Sort Algorithm – 9
Sudah terurut Belum terurut Tukar Dengan depan Proses dilanjutkan [0] [1] [2] [3] [4] [5] Slide copyright Pearson Education 2002

29 Selection Sort Algorithm – 10
Sudah terurut Belum terurut Proses dilanjutkan [0] [1] [2] [3] [4] [5] Slide copyright Pearson Education 2002

30 Selection Sort Algorithm – 11
Sudah terurut Belum terurut [0] [1] [2] [3] [4] [5] Slide copyright Pearson Education 2002

31 Selection Sort Algorithm – 12
Berhenti pada saat bagian yang terurut tinggal hanya satu Data karena Data yang ada pasti bilangan yang paling besar Sudah terurut Belum terurut [0] [1] [2] [3] [4] [5] Slide copyright Pearson Education 2002

32 Selection Sort Algorithm – 13
Data sudah terurut [0] [1] [2] [3] [4] [5] Slide copyright Pearson Education 2002

33 Analisa Selection Sort
Basic Operasi (A[j] < A[min]) Tidak ada Best Case dan Worst Case Total pergeseran M = 3 * n-1 (pada setiap penukaran terjadi 3 x pergeseran) Jumlah pembandingannya C = n-1 = n*(n-1)/2


Download ppt "Algoritma Sorting (Selection – Insertion)"

Presentasi serupa


Iklan oleh Google