Beranda > Tugas Kuliah > Jenis Metode Sorting

Jenis Metode Sorting

Adi Nugraha Y 50414234 2ia03 Algoritma Pemrograman 1A Kunto Bayu A, S.T.
Minggu, 19 Oktober 2014


Sorting? perlukah kita tau tentang hal ini? Maksudnya jika tidak perlu, jangan baca artikel ini ya .. hahaha..

Sorting itu bahasa inggris gan,. (ya iyalah jelas!, artikel macam apa ini?!) Maksudnya.... (terlalu banyak maksud) :v

Oke oke, sebelum kita mengetahui jenis-jenisnya, terlebih dahulu kita mencari arti dari kata "sorting" ini. Kata kakak kelas yang bernama Wikipedia :

Sorting adalah sebuah proses merangkai benda dalam urutan tertentu dan/atau dalam himpunan yang berbeda, dan oleh karena itu dia memiliki dua arti umum yang berbeda:
  • Pengurutan: merangkai benda yang sejenis, sekelas, dll, dalam urutan yang teratur,
  • Kategorisasi: pengelompokan dan pemberian label kepada benda dengan sifat yang serupa.
linkout

Setelah mengerti maksud dari kata ini, sekarang kita masuk ke pembagian jenis Sorting sendiri.

1. Bubble Sort

Bubble Sort merupakan metode pengurutan yang sering digunakan dengan metode yang paling sederhana. pada metode ini, Pengurutan dilakukan dengan cara membandingkan masing-masing item / data dalam suatu list secara berpasangan, lalu menukar data tersebut jika diperlukan, dan mengulanginya sampai akhir list secara berurutan dengan sempurna, sehingga tidak ada lagi data yang dapat ditukar.

2. Selection Sort

Selection Sort merupakan metode pengurutan dengan cara membaca seluruh elemen secara berurutan dan mencari nilai terendah. Kemudian membandingkan dan menukar elemen yang terpilih tersebut dengan elemen ke-a. Nilai dari a dimulai dari 1 ke n. Dimana n adalah jumlah total elemen dikurangi 1.

3. Quick Sort

Quick Sort merupakan metode pengurutan dengan algoritma berdasarkan pola divide-and-conquer.
penyortiran ini hanya memiliki 2 langkah :

  1. Divide bisa dikatakan Memilah rangkaian data menjadi dua sub-rangkaian A[p…q-1] dan A[q+1…r] dimana setiap elemen A[p…q-1] adalah kurang dari atau sama dengan A[q] dan setiap elemen pada A[q+1…r] adalah lebih besar atau sama dengan elemen pada A[q]. A[q] disebut sebagai elemen pivot. Perhitungan pada elemen q merupakan salah satu bagian dari prosedur pemisahan.
  2. Conquer dengan cara Mengurutkan elemen pada sub-rangkaian secara rekursif. Pada algoritma quicksort, langkah ”kombinasi” tidak di lakukan karena telah terjadi pengurutan elemen – elemen pada sub-array.

4. Insertion Sort

Insertion sort merupakan salah satu metode sorting dengan cara menyisipkan (insert). Pada dasarnya insertion sort memilah data yang akan diurutkan menjadi dua bagian: yang belum diurutkan dan yang sudah diurutkan. Elemen pertama diambil dari bagian array yang belum diurutkan dan kemudian diletakkan sesuai posisinya pada bagian lain dari array yang telah diurutkan. Langkah ini dilakukan secara berulang hingga tidak ada lagi elemen yang tersisa pada bagian array yang belum diurutkan tersebut.

5. Merge Sort

Merge Sort merupakan jenis pengurutan yang dirumuskan dalam 3 tahap berpola, yaitu divide and conquer.

berikut tahapan Merge Sort :

  1. Divide = Memilah elemen – elemen dari rangkaian data menjadi dua bagian.
  2. Conquer = Setiap bagian dengan memanggil prosedur merge sort secara rekursif
  3. Kombinasi = Mengkombinasikan dua bagian tersebut secara rekursif untuk mendapatkan rangkaian data yang berurutan.
Proses rekursi berhenti jika mencapai elemen dasar. Hal ini terjadi jika bagian yang akan diurutkan menyisakan tepat satu elemen. Sisa pengurutan satu elemen tersebut menandakan bahwa bagian tersebut telah terurut sesuai rangkaian yagn dikehendaki.

6. Shell Sort

Metode ini disebut juga dengan metode pertambahan menurun (diminishing increment). Metode ini dikembangkan oleh Donald L. Shell pada tahun 1959, sehingga sering disebut dengan Metode Shell Sort. Metode ini mengurutkan data dengan cara membandingkan suatu data dengan data lain yang memiliki jarak tertentu, kemudian dilakukan penukaran bila diperlukan.

7. Heap Sort

Heap sort merupakan metode sorting yang menggunakan struktur data heap, dengan nilai parent selalu lebih besar dari pada nilai childnya.

langkah-langkah metoder sortnya sebagai berikut :
  1. Buat suatu Heap
  2. Ambil isi dari root, lalu masukkan kedalam sebuah array.
  3. Hapus element root dengan mempertahankan properti heap.
  4. Ulangi sampai tree menjadi kosong

8. Bucket Sort

Bucket Sort merupakan metode sorting yang mempartisi deret angka menjadi beberapa deret yang kemudian dianalogikan menjadi ember.

Algoritma nya sebagai berikut :

  1. Cari nilai maksimum dan minimum di dalam array.
  2. Inisialisasi array bucket Daftar <> unsur (ukuran maxValue – minValue + 1)
  3. Pindahkan elemen dalam array untuk bucket
  4. Write bucket keluar (dalam rangka) ke array yang asli

9. Radix Sort

Radix Sort adalah metode sorting yang ajaib yang mana mengatur pengurutan nilainya tanpa melakukan beberapa perbandingan pada data yang dimasukkan. Secara umum yang proses yang dilakukan dalam metode ini adalah mengklasifikasikan data sesuai dengan kategori terurut yang tertentu dan dalam tiap kategorinya dilakukan pengklasifikasian lagi dan seterusnya sesuai dengan kebutuhan.
Secara kompleksitas waktu, radix sort termasuk ke dalam Divide and Conquer.Namun dari segi algoritma untuk melakukan proses pengurutan, radix sort tidak termasuk dalam Divide and Conquer.

Perhatian
Semua gambar dalam posting ini berasal dari luar, dengan kata lain saya tidak menggambarnya.
http://id.wikipedia.org/wiki/Sorting
http://id.wikipedia.org/wiki/Quicksort
http://en.wikipedia.org/wiki/Radix_sort
http://dodik99.blogspot.com.tr/2014/03/macam-macam-jenis-metode-sorting.html
http://agusjembung.blogspot.com.tr/2012/02/macam-macam-sorting.html
http://dotgeoteam.wordpress.com/2013/05/05/radix-sort/

Tidak ada Komentar

Poskan Komentar

Cancel Reply
< >
Drawing codeSyalalala!