Skip to main content

Sorting dan searching

Sorting mempunyai 5 metode untuk sorting data bisa di bagikan menjadi dua yaitu simple dan intermediate yang simple(gampang) ada Bubble,Selection dan insertion dan intermediate(lebih susah) ada quick and merge sort. Untuk Bubble sort dia membandingkan 2 yang pertama jika di tempat yang kedua ada yang lebih kecil dia di tuker jika tidak dia lanjutin sampai habis yaitu bisa makan waktu banyak sekali(penjelasan dalam gambar):

untuk source kodenya:
untuk selection sort dia cari nomor yang paling kecil lalu taro di depan(di repeat sampai selesai sort)
untuk insertion sort saya kurang paham :) tapi untuk penjelasan gambarnya:


Lalu untuk intermediate sorting ada Quick Sort dan Merge sort: untuk Quick sort dia ambil 1 secara acak dan random sebagai pivot dan membandingkan 1 per satu, untuk merge sort dia di bagikan menjadi beberapa group dan lalu dia sorting dalam group" yang kecil dan di ulang sampai selesai sorting sebenernya Merge sort lebih effisien jika pivotnya untuk quick sort jelek sekali untuk penjelasan lebih dalam,jelas dan detail bisa nonton di https://www.youtube.com/watch?v=es2T6KY45cA

Lalu untuk Searching ada 3 yaitu Linear, Binary dan interpolation search. Linear search bisa di gunakan jika datanya dikit / data yang di cari ada di atas atas jika datanya ada di akhir akhir lebih effisien untuk mengunakan Binary(untuk interpolation tadi di kelas kecil tidak jelas jadi yak saya tidak ngerti juga).

Linear searching : membandingkan setiap elemen dari array dengan kunci pencarian.Karena array tidak dalam urutan tertentu, kemungkinan besar nilainya akan ditemukan di elemen pertama seperti yang terakhir.Oleh karena itu, rata-rata, program harus membandingkan kunci pencarian dengan setengah elemen dari array untuk algorithmanya: 

Binary searching : Jauh lebih effisien dari Linear. Pertama dia dari midnya rumusny adalah mid = (left + right) / 2 jika hasilnya lebih kecil dari angka yang di cari maka dia tambah 1 jika hasilnya kelebihan dia kurang 1. Untuk algorithmanya 
NIM: 2201737671
Nama: Ferdinand Leonardi
Binus.ac.id
skyconnectiva.com

Comments