Anda di halaman 1dari 38

KELOMPOK 6

Ade Ibra Fais


Geraldi
Monang Hasfi
Shani
Meylisa Naulur Tambunan
Risda Putri Greccella
Tri Yohanes
Yehuda Simatupang
SORTING
(PENGURUTAN)
SORTING

Sorting adalah suatu proses pengurutan data


yang disusun secara atau
sebelumnya acak
tidak teratur menjadi urut teratur menurut
atau suatu aturan tertentu.
SORTING DIBAGI MENJADI 2

ASCENDING
DESCENDING

Pengurutan
Pengurutan
dari kecil
dari besar
ke besar
ke kecil
ascendiFI\.C descending.cpp
1 #include ?icst’eaz›
2 4include Calgc’ithr>
3 using Namespace std;

5 void ascend1ng5on I ( Int: ann [ ]tInt n) (


6 sort (arr, arr+n) ;
7
g cout‹ ‹ "Ascending order :"j
9 for (int i = 0; i C n; i+
+)

12 cout <<
endl;
14
15 int main()
16 3, 5, 7, 1, 3 };
17 int n = sizeof(arr) / sizeo}(arr[0));

19 ascendingSort(arr, n);
20
21 return 0;
22 }

D:\unpri\c+ +\ascending.exe
ascending.cpp descending.cpp
1 #include <icst’eaz.»
2 4include<algcithr>
3 using namespace std;

void descend1ng5ar I (*nt: arr ) Int: n) (


sort ( arm arr + n greater ‹ Int :> ( ) ) ,

cout ‹ ‹ ”Desc end Ing ordei : "


for (Int i = 0; i ‹ n; i++) ’j
12

cout <‹ endl;

14
15 Int: maln ( )

Int: n = s z z eat ( a r r ) / s z z eat ( a r r 8]),

19 descend1ng5o r I ( a r r n ) ,
20
21
22
}

^ D:\unpri\c+ +\descending.exe
Untuk melakukan pengurutan terdapat beberapa
cara atau metode diantaranya:

Exchange Sort

1 Shell Sort

2 Tree Sort

3
Heap Sort

4 Quick Sort
EXCHANGE SORT

Exchange sort adalah metode yang mengurutkan


data cara membandingkan masing masing
dengan
elemen,kemudian melakukan penukuran bila
perlu.Metode ini disebut juga dengan metode
tambahan menurun(diminishing increment sort).
SHELL SORT

Algoritma pengurutan merupakan perbaikan terhadap metode


shell
pengurutan sisip. Shell sort adalah salah satu sorting algoritma pada
sebuah deklarasi array ([]).
Pada pengurutan data kita terlebih dahulu harus membuat sub list –
sub list yang di dasarkan pada jarak antar data yang di tentukan.
Jarak yang telah ditetukan biasanya di dengan k,
lambangakan
biasanya jarak yang di pada sorting ini saat
paling gunakan
melakukan pengurutan data yaitu k5, dan k1 Artinya, dari data
k3. .
yang akan ditentukan atau ditukar dengan data yang lain berjarak
5, 3 atau 1 data saja.
KELEBIHAN SHELL SORT

Algoritma ini sangat rapat dan mudah untuk


diimplementasikan.
Operasi pertukarannya hanya dilakukan sekali saja.
Waktu pengurutan dapat lebih ditekan.
Mudah menggabungkannya kembali.
Kompleksitas selection sort relatif lebih kecil.
KEKURANGAN SHELL SORT

Membutuhkan method tambahan.


Sulit untuk membagi masalah.
TREE SORT

Kumpulan yang satu elemennya


elemen salah
disebut root dan sisa elemen yang
dengan (akar)
lain dengan simpul yang
disebut (node/vertex)
terpecah menjadi sejumlah himpunan yang tidak
saling berhubungan satu sama
lain,yang disebut
subtree/cabang.
KONSEP DASAR

Konsep dasar dari tree sort adalah sebagaimana


sebuah pohon, akar, batang, ranting, daun,
ada
dsb. tree sort ada istilah atau root dan
Dalam akar
daun atau leaf.
ISTILAH OBJEK TREE

Simpul adalah elemen tree yang informasi/data dan


berisi penunjuk pencabangan.
Tingkat/Level suatu simpul ditentukan dari akar(root),sebagai
level 1.
Derajat/Degree menyatakan banyaknya anak/turunan
disimpul tersebut.
Tinggi(Height) atau kedalaman (depth) suatu tree tingkat
adalah
maksimum dari tingkat dalam tree tersebut dikurangi 1.
Ancestor suatu simpul adalah semua simpul yang terletak dalam
satu jalur dengan simpul akar sampai simpul yang
tersebut,dari ditinjaunya.
Predecessor adalah simpul yang berada di atas simpul
yang ditinjau.
successor adalah simpul yang berada dibawah simpul yang
ditinjau.
Descendant adalah seluruh simpul terletak sesudah simpul
yang
tertentu dan terletak pada jalur yang sama.
Sibling adalah simpul simpul yang memiliki parent yang sama
dengan simpul yang ditinjau
Parent adalah simpul yang berada satu level diatas yang ditinjau
HEAP SORT

Heap sort adalah sebuah metode sorting


(pengurutan) angka pada sebuah array dengan cara
menyerupai binary tree, yaitu dengan cara
memvisualisasikan sebuah menjadi sebuah
array
binary tree yang nantinya binary tree tersebut
pada
nilai pada masing-masing indeks
array diurutkan. akan
MAX HEAP
MAX HEAP
PENYORTIRAN
PENYORTIRAN
PENYORTIRAN
PENYORTIRAN
KEUNTUNGAN DAN KERUGIAN

KEUNTUNGAN
KERUGIAN

Efisiensi
Mahal
Penggunaan
Tidak Stabil
memori
Efisiensi
Kesederhanaan
QUICK SORT

Quicksort merupakan Algoritma Sorting yang


dikembangkan oleh Tony Hoare,yang secara kasus
rata-rata, menciptakan pengurutan O(n log n)
untuk mengurutkan n item. Algoritma ini juga
dikenal sbg Partition-Exchange Sort atau dikata sbg
Sorting Pergantian Pembagi.
PROGRAM QUICK SORT

Quicksort(A,p, r) { if (p < r) { = r) ;
q Partition(p,
Quicksort(A, p, q); Quicksort(A, q+1, r); } }
KEUNGGULAN

1.Secara memiliki kompleksitas O(n log n).


umum
2. Algoritmanya sederhana dan mudah diterapkan pada berbagai
bahasa pemrograman dan arsitektur mesin secara efisien.
3. Dalam prakteknya yang tercepat dari berbagai algoritma
adalah
pengurutan perbandingan, seperti mergesort dan
dengan heapsort.
4. Melakukan proses langsung pada input (in-place) dengan
sedikit tambahan memori.
5. Bekerja dengan baik berbagai jenis
pada angka dan
input data
(seperti
KEKURANGAN

1. Sedikit kesalahan dalam penulisan program membuatnya bekerja tidak


beraturan (hasilnya tidak benar atau tidak pernah selesai).
2. Memiliki ketergantungan terhadap data dimasukkan, yang dalam kasus
yang terburuk memiliki kompleksitas
O(n2).
3. Secara umum bersifat tidak stable, yaitu mengubah urutan input dalam
hasil akhirnya (dalam hal inputnya bernilai sama).
4. Pada penerapan secara rekursif (memanggil sendiri) terjadi kasus
dirinya bila
terburuk dapat menghabiskan stack dan memacetkan program.
5. Pada bahasa pemrograman, quicksort dalam stdlib.h untuk
ada pustaka
bahasa C, dan class TList dan TStringList dalam
Delphi (Object Pascal)
maupun FreePascal.
RAGAM

1.Balanced
2.External 3.prosedur Quicksort
Quicksort: memilih
radiks (ditemukan
pivot mungkin bagi Quicksort: sama
oleh Sedgewick dan
mewakili pertengah seperti quicksort
juga diketahui
dari nilai yang yang pada sebagai Multikey
akan dipilih, dan umumnya Quicksort): ialah
belakang mengikuti
kecuali pivot kombinasi dari Radix
algoritma quicksort
dialihkan sort dan Quicksort.
seperti biasa
dengan buffer.
KESIMPULAN

penggunaan pengurutan dalam ilmu komputer


memang sangat diperlukan karena kita tidak
bisa dengan prinsip “yang penting
membuat
jalan” dan sorting memiliki beberapa jenis.
TERIMA KASIH
Presentasi oleh kelompok 6 Struktur Data

Anda mungkin juga menyukai