Sorting & Searching

Sorting 

Merupakan teknik untuk mengurutkan suatu data yang ada dengan kriteria tertentu seperti mengurutkan dari yang kecil atau dari yang besar.Beberapa contoh sorting yang dikategorikan mudah adalah bubble sort dan selection sort. 

Bubble sort 

Bubble sort memiliki algoritma untuk membanding data ke-(n) dengan data ke-(n+1) sampai habis secara berulang-ulang, dan dalam setiap perulangan akan dilakukan penukaran nilai jika data ke-(n) lebih besar dari data ke-(n+1).

Selection sort 

Selection sort memiliki algoritma yang mirip dengan bubble sort, perbedaan selection sort terletak pada pengambilan data pertama sebagai pivot. Jika bubble sort menukar nilai dari data yang bersebelahan dan dapat dilakukan >1x setiap kali perulangan, selection sort hanya melakukan penukaran dengan data yang tidak bersebelahan dan 1x pertukaran data setiap pengulangan. 
Pivot di-inisiasi sebagai data ke-(n) lalu dibandingkan dengan data yang lainnya untuk mencari nilai minimum, jika data yang paling kecil terletak misalnya pada (n+3) maka akan terjadi penukaran nilai data ke-(n) dengan data ke-(n+3).
Catatan: sorting pada contoh mengurutkan data dari kecil hingga besar.

Searching

Merupakan teknik untuk mencari suatu data pada sekumpulan data. Pada umumnya terdapat 3 jenis search, yaitu linear search, binary search, dan interpolation search.

Linear Search

Memiliki algoritma membandingkan data yang dicari dengan semua data yang ada satu persatu.

Binary Search

Merupakan teknik yang dapat digunakan untuk mencari data yang sudah disorting dengan lebih cepat dan efisien karena binary search membagi 2 daerah pencarian data dengan menetapkan data tengahnya sebagai acuan (pivot). Apabila data yang kita cari lebih kecil dari pada pivot, maka program hanya akan mencari data disebelah kiri pivot. Namun apabila data yang kita cari lebih besar dari pada pivot, maka program hanya akan mencari data yang ada disebelah kanan pivot.


Comments

Popular Posts