Selasa, 18 Desember 2018

SORTING & SEARCHING

        Halo, guys!!! saya akan membahas tentang sorting dan searching.
Sorting digunakan untuk mengatur ulang elemen array yang ada agar sesuai dengan operator perbandingan pada elemen. operator perbandingan itu untuk memutuskan urutan elemen yang baru dalam struktur data. sebagai contoh: kita akan menggunakan ascii, maka kita akan mengurutkan suatu karakter berdasarkan ascii-nya.

Berikut adalah algoritma sorting yang sedang saya pahami:
1. Selection Sort
2. Bubble Sort
3. Insertion Sort
4. Merge Sort
5. Quick Sort
6. Dan masih banyak lagi.

Yang akan kita bahas adalah 5 sorting diatas.
1. Selection Sort : mengurutkan sebuah array dengan berulang kali lalu cari elemen minimum dari bagian yang tidak disortir dan diletakkan diawal. ada 2 sub-array: array yg sudah disortir dan yang belum disortir. array yang sudah disortir akan diletakkan di bagian kiri dan kanan array yg belum disortir.

2. Bubble Sort : algoritma yang sederhana, tetapi waktu sorting agak lama. awalnya akan ditetapkan suatu array yang akan dibandingkan. anggap array yang lebih kecil akan disebelah kiri. nah, array pembanding tadi akan dibandingkan dengan array disebelahnya, bila array itu lebih kecil, akan diletakkan dikiri array pembanding. akan terus begitu, sampai array tersebut berada di urutan yang benar. bila masih ada array yg belum urut maka akan terus dibandingkan dengan menjadikan array lain sebagai pembanding. dan seterusnya.

3. Insertion Sort : algoritma yang sederhana dan waktu sorting agak lama. jadi akan dipilih 1 array pembanding(ap), yaitu paling kiri. bila ap lebih kecil dari array setelahnya(as), maka ap tidak pindah. setelah itu as akan menjadi ap dan array setelahnya. bila lebih kecil, tidak akan pindah, tapi bila lebih besar, akan pindah ke urutan array ap. dan bila array yang pindah itu msih lebih besar dari array sebelumnya, makan akan pindah lagi, sampai array tersebut benar-benar lebih kecil dari array sebelumnya.

4. Merge Sort : algoritma ini membagi array menjadi 1/2x array awal, dan akan terus dibagi sampai tidak bisa dibagi 2 lagi. misalkan arraynya ada 8, berarti akan menjadi 2 2 2 2. lalu masing-masing sub array saling membandingkan. kecil - kiri, besar- kanan. stlh itu, sub-array tersebut bergabung dengan sebelahnya menjadi sub array 4 4 dan dilakukan perbandingan. bila sudah urut, maka sub array 4 dan 4 akan digabung dan dibandingkan sampai semuanya urut.

5. Quick Sort : algoritma yang mirip dengan merge sort. quick sort memilih suatu array sebagai pivot, pivot tersebut bisa array 1 atau terakhir atau array acak, atau dari median. algoritma sorting ini paling cepat dalam pemrosesannya.



Selanjutnya saya akan membahas tentang Searching.
Searching adalah algoritma yang dibuat untuk memeriksa/mengambil elemen dari struktur data tempat ia disimpan.
Macam-macam searching:
1. Linear Searching : membandingkan tiap elemen dari array dengan suatu key yg sdh ditetapkan.
2. Binary Searching : lebih cepat dan efisien untuk membaca data yang berukuran besar.
3. Interpolation Searching : hampir mirip dengan binary, interpolation mencari data dengan memperkirakan lokaasi data. misalkan suatu buku memiliki alphabet dari A-H. bila ingin mencari kata dengan huruf depan F, maka akan langsung di cari ke baigan  3/4 buku itu. (A-H = 8, lalu 8/2= 4 bagian, dan F berada dibagian ke 3.)

Sekian blog saya...... :p




2201752653
skyconnectiva.com
binus.ac.id
Kevin Nolasco.

Tidak ada komentar:

Posting Komentar