Upload
tieve
View
45
Download
0
Embed Size (px)
DESCRIPTION
Pengurutan Data. Proses pengurutan data banyak ditemukan dalam komputer . Hal itu karena data yang sudah urut akan lebih cepat untuk dicari . Untuk membentuk data yang tidak urut menjadi data yang urut , terdapat berbagai algoritma yang bisa digunakan - PowerPoint PPT Presentation
Citation preview
Nurdiansah PTIK 09 UNM 1
Pengurutan Data
Nurdiansah PTIK 09 UNM 2
Pengantar pengurutan data
Proses pengurutan data banyak ditemukan dalam komputer. Hal itu karena data yang sudah urut akan lebih cepat untuk dicari. Untuk membentuk data yang tidak urut menjadi data yang urut, terdapat berbagai algoritma yang bisa digunakan
Pengurutan dilakukan terhadap data yang secara keseluruhan diletakkan dalam memori ataupun terhadapa data yang tersimpan pada pengingat eksternal
pada pengurutan data dikenal istilah ascending (urut naik) dan descending (urut turun)
Nurdiansah PTIK 09 UNM 3
Metode bubble sort
- Metode bubble sort merupakan metode sederhana untuk melakukan pengurutan data, tetapi memiliki kinerja yang kurang baik untuk data yang besar.
- Pengurutan dilakukan dengan membandingkan sebuah bilangan dengan seluruh bilangan yang terletak sesudah bilangan tersebut.
- Penukaran dilakukan kalau suatu kriteria dipenuhi
Nurdiansah PTIK 09 UNM 4
Implementasi pengurutan dengan metode bubble-sort baik dalam bentuk algoritma maupun program
SUBRUTIN bubble_sort(L, n)UNTUK tahap =1 s/d n-1
UNTUK j 0 s/d n-tahap-1JIKA L[j] > L[j+1] MAKA
// Lakukan penukarantmp L [j]L[j] L[j+1]L[j+1] tmp
AKHIR-JIKAAKHIR-UNTUK
AKHIR-UNTUKAKHIR-SUBRUTIN
Nurdiansah PTIK 09 UNM 5Program
#include<stdio.h>Void tampilkan_larik(int data[], int n){
int i;for (i = 0; i < n; i++)printf(“%d”, data[i]);printf(“\n”);
}Void bubble_sort(int data[], int n){
Int tahap, j, tmp;for (tahap =1; tahap < n ; tahap++)
{for(j =0; j < n – tahap; j++)if data[j] > data [j+1]{
Nurdiansah PTIK 09 UNM 6Cont’…
/* Tukarkan */tmp = data [j];data[j] = data[j+1];data[j+1]= tmp;}
printf(“hasil tahap %d:”, tahap);tampilkan_larik(data, n);
}}
Int main(){Const JUM_DATA =8;
int I;int data[]={25,57,48,37,12,92,80,33};bubble_sort(data, JUM_DATA);
/*Hasil Pengurutan*/printf(“Hasil Pengurutan :\n”);tampilkan_larik(data, JUM_DATA);return 0;
}
Nurdiansah PTIK 09 UNM 7Metode pengurutan seleksi
Pengurutan seleksi (selection sort) mempunyai mekanisme seperti berikut: mula-mula suatu pununjuk (diberi nama posAwal), yang menunjuk ke lokasi awal pengurutan data, diatur agar diberi indeks pertama dalam larik.
Selanjutnya dicari bilangan terkecil yang terletak antara posisi sesudah yang ditunjuk oleh posMin. Lalu tukarkan nilai bilangan terkecil tersebut dengan nilai yang ditunjuk oleh posAwal.
Proses seperti itu diulang dari posAwal bernilai 0 hingga n-2, dengan n menyatakan jumlah elemen dalam larik
Nurdiansah PTIK 09 UNM 8
Pengurutan dengan penyisipan
Pengurutan dengan penyisipan (insertion sort) adalah suatu metode yang melakukan pengurutan dengan cara menyisipkan data yang belum urut ke dalam data yang telah diurutkan.
Konsep seperti ini biasa dilakukan pada permainan kartu
Ketika sebuah kartu baru didapatkan (hasil pengocokan kartu) kartu akan disisipkan oleh pemain pada posisi yang tepat sehingga penambahan kartu tersebut membuat semua kartu tetap terurutkan
Nurdiansah PTIK 09 UNM 9Metode Quick Sort
Quick sort adalah metode pengurutan data yang dikemukakan pertama kali oleh C.AR Hoare pada tahun 1962.
Metode ini menggunakan strategi “pecah belah” dengan mekanisme seperti berikut: larik L[p..r] (dengan indeks terkecil adalah p dan terbesar adalah r) disusun ulang (dipartisi) menjadi dua buah larik A[p..q] selalu bernilai lebih kecil daripada setiap elemen pada A[q+1..r]
Kedua larik tersebut diurutkan secara rekursif. Dengan sendirinya kombinasi kedua larik tersebut membentuk larik dengan data yang telah urut.
Nurdiansah PTIK 09 UNM 10
The END