Pengurutan (Sorting) Diperlukan untuk mempercepat pencaharian suatu target dalam suatu daftar (list). Jenis Pengurutan:  Ascending Pengurutan dilakukan.

Slides:



Advertisements
Presentasi serupa
BAB III – ARRAY STATIS II
Advertisements

Algoritma Sorting Alpro-2.
- PERTEMUAN 11 - SORTING (PENGURUTAN)
STRUKTUR DATA (3) sorting array
Sorting (Pengurutan).
ARRAY 1 DIMENSI #10 STIKOM Searching Pengantar Manfaat Inisialisasi
Sorting Algorithms Dr. Anto Satriyo Nugroho, M.Eng
PENGURUTAN ( SORTING ) Fajrizal.
SORTING (PENGURUTAN) Sorting adalah proses mengatur sekumpulan objek menurut aturan atau susunan tertentu. Urutan objek tersebut dapat menaik (ascending.
PENGURUTAN (SORTING).
SORTING (PENGURUTAN).
ARRAY SESI 2.
STRUKTUR DATA (3) sorting array
SORTING.
Algoritma & Struktur Data Sorting Evangs Mailoa.
Pertemuan – 14 Sorting (Bab 8) Informatics Engineering Department
Sorted = terurut menurut kaidah/aturan tertentu
Algoritma dan Struktur Data
Teknik Informatika - Universitas Muhammadiyah Malang (UMM)
Source: Sorting Algorithms source:
BAB 6 S O R T I R Sebelum mengetahui lebih jauh tentang sorting, sebaiknya kita ingat kembali pengertian file dan record. File adalah kumpulan record,
BAB III PENGURUTAN DATA (SORTING) Tertia Avini, S. Kom tertiaavini
STRUKTUR DATA (4) Sorting dan Searching Array
Matakuliah : T0456 ~ Algoritma dan Metode Object Oriented Programming
Sorting (Pengurutan).
SORTING Matakuliah : T0974 / Algoritma dan Metode Object Oriented Programming I Tahun : 2008 Versi : 1/0.
Matakuliah : T0456 ~ Algoritma dan Metode Object Oriented Programming
Matakuliah : T0456 ~ Algoritma dan Metode Object Oriented Programming
Metode Pengurutan (Sorting)
Algoritma sorting dasar (lanjutan) Pertemuan 11
Matakuliah : T0016 / Algoritma dan Pemrograman Tahun : 2007 Versi : 6
Sorting Algorithm Norma Amalia, ST, M.Eng.
PENGURUTAN (SORTING).
STRUKTUR DATA Chapt 07 : Sorting Oleh : Yuli Praptomo PHS, S.Kom.
Algoritma dan Struktur Data
STRUKTUR DATA Marjiyono, S.kom
Sorting Pengurutan data dalam struktur data sangat penting terutama untuk data yang beripe data numerik ataupun karakter. Pengurutan dapat dilakukan secara.
Pertemuan 10 SORTING.
Algoritma dan Pemrograman Sorting
Struktur Data Prio Handoko, S. Kom., M.T.I.
Algoritma dan Struktur Data Menggunakan Java
PENGURUTAN (SORTING) Pengurutan adalah proses mengatur sekumpulan objek menurut urutan atau susunan tertentu. Urutan objek tersebut dapat dilakukan secara.
SORTING (Lanjut).
Sorting.
STRUKTUR DATA Array Statis.
STRUKTUR DATA (3) sorting array
Metode pemecahan masalah
STRUKTUR DATA sorting array
STRUKTUR DATA Array Statis.
Imam Gunawan, M. Kom STMIK-AMIK Jayanusa Padang
Algoritma dan Pemrograman Sorting
Nama : Siti Hajar Unit : B Nim : No.Hp : 0852 – 2000 – 3786.
STRUKTUR DATA Array Statis.
Dasar – dasar Pemrograman
Shorting (Pengurutan)
Algoritma dan Pemrograman Sorting
Bubble sort.
Sorting.
STRUKTUR DATA (3) sorting array
SORTING ARRAY SESI 2.
ALGORITMA PENGURUTAN (SORTING)
Pertemuan 4 Sorting (1) jual [Valdo] Lunatik Chubby Stylus.
SORTING (PENGURUTAN).
IT234 Algoritma dan Struktur Data
Sorting Dasar Pemrograman
STRUKTUR DATA (3) sorting array
IT234 Algoritma dan Struktur Data
Pengurutan (sorting).
IT234 Algoritma dan Struktur Data
SORTING.
Transcript presentasi:

Pengurutan (Sorting) Diperlukan untuk mempercepat pencaharian suatu target dalam suatu daftar (list). Jenis Pengurutan:  Ascending Pengurutan dilakukan mulai dari nilai terkecil menuju nilai terbesar  Descending Pengurutan dilakukan mulai dari nilai terbesar menuju nilai terkecil. Teknik Pengurutan:  Sederhana :  Lanjut :  Selection sort  Quick Sort  Bubble sort  Merge Sort  Insertion sort

519 419 127 69 381 Selection: Algoritma: for(i=0; i<=N-2;i++){ /* N=Banyak data dlm daftar */ for(j=i;j<=N-1;j++){ /* Tentukan index dari data terkecil antara A[j] s/d A[N-1], dan simpan di variabel k. Kemudian tukar A[i] dengan A[k]. */ } 519 Data Pertama Baca Data 419 Tukarkan 127 69 Data Terkecil 381

519 519 69 419 419 127 127 69 519 381 381 Selection: Algoritma: for(i=0; i<=N-2;i++){ /* N=Banyak data dlm daftar */ for(j=i;j<=N-1;j++){ /* Tentukan index dari data terkecil antara A[j] s/d A[N-1], dan simpan di variabel k. Kemudian tukar A[i] dengan A[k]. */ } 519 519 69 419 419 Data Pertama Baca Data Tukarkan 127 127 Data Terkecil 69 519 381 381

Selection: Algoritma: for(i=0; i<=N-2;i++){ /* N=Banyak data dlm daftar */ for(j=i;j<=N-1;j++){ /* Tentukan index dari data terkecil antara A[j] s/d A[N-1], dan simpan di variabel k. Kemudian tukar A[i] dengan A[k]. */ } 519 69 69 419 419 127 127 127 419 Data Pertama Baca Data 69 519 519 Tukarkan 381 381 381 Data Terkecil

Selection: Algoritma: for(i=0; i<=N-2;i++){ /* N=Banyak data dlm daftar */ for(j=i;j<=N-1;j++){ /* Tentukan index dari data terkecil antara A[j] s/d A[N-1], dan simpan di variabel k. Kemudian tukar A[i] dengan A[k]. */ } 519 69 69 69 419 419 127 127 127 127 419 381 69 519 519 519 Data Pertama Baca Data Tukarkan 381 381 381 419 Data Terkecil

Selection: Algoritma: for(i=0; i<=N-2;i++){ /* N=Banyak data dlm daftar */ for(j=i;j<=N-1;j++){ /* Tentukan index dari data terkecil antara A[j] s/d A[N-1], dan simpan di variabel k. Kemudian tukar A[i] dengan A[k]. */ } 519 69 69 69 69 419 419 127 127 127 127 127 419 381 381 69 519 519 519 419 381 381 381 419 519 Data Terakhir Berhenti

/* Fungsi-fungsi pada Selection Sort */ #include <stdio.h> #define Maxint 32767 void Cari_Min(int *Arr, int mulai, int akhir,int *k) { int min,i; min = Maxint; for (i=mulai; i<=akhir;i++){ if (Arr[i] < min){ min = Arr[i]; *k = i; } void Tukar(int *x, int *y) { int z ; z = *x; *x = *y; *y = z;

void Selection(int *Arr, int n) { int i,k; for(i=0;i<=n-2;i++){ Cari_Min(Arr,i,n-1,&k); Tukar(&Arr[i],&Arr[k]); }   /* Program Utama */ void main() int DataArr[] = {519,419,127,69,381}; int i;   for(i=0; i<5; i++) printf(“%d ”,DataArr[i]); printf(“\n”); Selection(DataArr,5); for(i=0; i<5; i++) printf(“%d ”,DataArr[i]);

Bubble (Exchange) 519 419 Pola Pergerakan Elemen Pada Putaran Pertama 127 69 381 Pola Pergerakan Elemen Pada Putaran Pertama 519 419 127 381 69 Pola Pergerakan Elemen Pada Putaran Kedua

Pola Pergerakan Elemen Pada Putaran Ketiga 69 69 69 127 127 127 519 519 381 419 381 519 381 419 419 69 127 381 519 419 69 127 381 419 519 Putaran Keempat Terakhir

void Bubble(int *DataArr, int n) { int i,j; for (i=1; i<n; i++) for (j=n-1; j>=i; j--) if (DataArr[j-1] > DataArr[j]) Tukar(&DataArr[j-1],&DataArr[j]); } Bila data telah terurut, procedure diatas berlaku ‘bodoh’, yaitu tetap melakukan pembandingan. Perbaikan secara sederhana, yaitu menambah : ‘flag’ yang memberitahu, bila pada suatu putaran data telah terurut.

Latihan : Buat main program untuk memanggil fungsi buble_flag diatas. void Bubble_Flag(int *Arr, int n) { int i,j; int urut; /* Flag */ urut = 0; i = 1; while ((i < n) && (!urut)) { urut = 1; for (j=n-1; j>=i; j--) { if (Arr[j-1] > Arr[j]){ Tukar (&Arr[j-1], &Arr[j]); } i = i + 1; Latihan : Buat main program untuk memanggil fungsi buble_flag diatas.