Sorting and Searching

Sorting digunakan untuk mengurutkan data, entah dari kecil ke besar atau sebaliknya

ada 5 jenis sort yang umum di gunakan :
1. Bubble sort : mengcompare data yang bersebelahan. Relatif lama karena mengcek seluruh array, mengcomparekannya, lalu baru mengubah
2. Selection sort : mengambil salah satu nilai random lalu mengeceknya dengan array-array setelahnya, menggunakan pointer (penunjuk), jika sudah ketemu nilai terkecil/terbesar yang diinginkan, mengubah array paling pertama dengan array nilai terbesar/terkecil tersebut.
3. Insertion sort : mengambil salah satu nilai lalu memasukannya kedalam temp, lalu membandingkannya dengan data sebelumnya.
4. Quick sort : memilih salah satu nilai sebagai 'partisi', lalu mengcompare nilai-nilai lainnya dengan partisi. Jika sudah tersort, maka bagian kiri dan bagian kanan partisi akan di sort lagi menggunakan partisi-partisi baru lalu di compare kembali.
5. Merge sort : mengambil 2 nilai yang bisa di compare lalu menggabungkannya sekaligus di compare. lalu menggabungkan 2 nilai yang sudah di compare tersebut dengan 2 nilai selanjutnya, dan seterusnya.

Searching digunakan untuk mencari suatu kata atau niali suatu variabel

1. Linear search : logikanya sama seperti bubble sort, mencari satu persatu data
2. Binary search :  mengambil nilai tengah dari array-array, lalu mengcomparenya dengan data yang ingin di cari. Data yang dicari tersebut dicari duilu posisinya, apakah ia berada di sebelah kanan atau disebelah kiri nilai tengah. Jika ia berada di sebelah kiri, data yang kanan akan diabaikan dan tidak dipakai, lalu fokus ke data yang berada di kiri, lalu menglang step dari awal dengan data sisanya.
3. Interpolation search : mirip dengan binary search, tapi lebih cepat karena mempunyai rumus untuk mencari data tersebut dekat dengan data yang dicari.

Comments

Popular posts from this blog

File Processing

Function and Recursion