Anda di halaman 1dari 3

Linear Search

Linear search atau metode pencarian linear adalah teknik pencarian di mana program akan mencari
anggota dari suatu search space satu per satu sampai value yang dicari ditemukan.

Binary Search
Binary search adalah metode pencarian dalam suatu search space (atau lebih sering arrays)
yang telah terurut isinya, baik terurut menaik maupun menurun. Metode ini berjalan dengan
kurang-lebih seperti ini:

1. Baca nilai yang ingin dicari (x)


2. Bila nilai yang terdapat di bagian tengah array = x, outputkan 'ADA', bila tidak, kalau
mid > x, potong search space menjadi setengah (dari titik awal sampai tengah-1) bila
mid < x, potong search space menjadi setengah (dari tengah+1 sampai titik akhir),
ulangi sampai titik akhir-titik awal = 1.

Macam-macam Sorting
Macam-macam Sorting:

 Buble Sort :

Merupakan algoritma pengurutan paling tua dengan metode pengurutan paling sederhana.
Pengurutan yang dilakukan dengan membandingkan masing-masing item dalam suatu list
secara berpasangan, menukar item jika diperlukan, dan mengulaginya sampai akhir list secara
berurutan, sehingga tidak ada lagi item yang dapat ditukar.

 Selection Sort :

Ide utama dari algoritma selection sort adalah memilih elemen dengan nilai paling rendah
dan menukar elemen yang terpilih dengan elemen ke-i. Nilai dari i dimulai dari 1 ke n,
dimana n adalah jumlah total elemen dikurangi 1.

 Insertion Sort :

Algoritma insertion sort pada dasarnya 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.
 Shell Sort :

Merupakan algoritma yang stau jenis dengan insertion sort, dimana pada setiap nilai i dalam
n/i item diurutkan. Pada setiap pergantian nilai, i dikurangi sampai 1 sebagai nilai terakhir

 Merge Sort :

Algoritma dirumuskan dalam 3 langkah berpola divide-and-conquer. Berikut menjelaskan


langkah kerja dari Merge sort.

1. Divide

Memilah elemen – elemen dari rangkaian data menjadi dua bagian.

2. Conquer

Conquer setiap bagian dengan memanggil prosedur merge sort secara rekursif

3. Kombinasi

Mengkombinasikan dua bagian tersebut secara rekursif untuk mendapatkan rangkaian data
berurutan

Proses rekursi berhenti jika mencapai elemen dasar. Hal ini terjadi bilamana bagian yang
akan diurutkan menyisakan tepat satu elemen. Sisa pengurutan satu elemen tersebut
menandakan bahwa bagian tersebut telah terurut sesuai rangkaian.

 Quick Sort :

Algoritma ini berdasar pada pola divide-and-conquer. Berbeda dengan merge sort, algoritma
ini hanya mengikuti langkah – langkah sebagai berikut :

1. Divide

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
Mengurutkan elemen pada sub-rangkaian secara rekursif. Pada algoritma quicksort,
langkah ”kombinasi” tidak di lakukan karena telah terjadi pengurutan elemen – elemen pada
sub-array

 Heap Sort:

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

Algoritma:

1. Buat suatu heap.


2. Ambil isi dari root masukkan kedalam sebuah array.
3. Hapus element root dengan mempertahankan properti heap.
4. Ulangi sampai tree menjadi kosong

 Bucket Sort :

Algoritma:

 Cari nilai maksimum dan minimum di array


 Inisialisasi array bucket Daftar <> unsur (ukuran maxValue – minValue + 1)
 Pindahkan elemen dalam array untuk bucket
 Write bucket keluar (dalam rangka) ke array yang asli

 Radix Sort:

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.

Radix sortmerupakan sebuah algoritma pengurutan yang mengatur pengurutan nilai tanpa
melakukan beberapa perbandingan pada data yang dimasukkan.

https://lunarphue.wordpress.com/information-technology/asd/macam-macam-sorting/

http://scitsman1depok.blogspot.co.id/2012/02/linear-and-binary-search.html

Anda mungkin juga menyukai