Sorting adalah suatu cara untuk mengurutkan data sesuai dengan urutan yang kita inginkan, apakah itu dari besar-kecil ataupun kecil-besar.
Macam-macam Jenis Sorting :
1. Bubble Sorting : (BASIC)
Bubble Sorting bekerja dengan menyesuaikan value dari nilai-nilai yang bersebelahan.
Keuntungan :
+ Penulisan kode yang mudah.
+ Mudah dipahami.
Kelemahan :
– Tidak sesuai jika data yang dimiliki banyak.
2. Selection Sorting : (BASIC)
Selection Sorting bekerja dengan memilih nilai yang paling kecil lalu nilai itu akan dipindahkan menjadi yang paling pertama ataupun sebaliknya.
Keuntungan :
+ Penulisan kode yang mudah.
+ Mudah dipahami.
Kelemahan :
– Tidak sesuai jika data yang dimiliki banyak.
3. Insertion Sorting : (BASIC)
Insertion Sorting bekerja dengan menyisipkan maka ketika bilangan yang dipilih lebih kecil ia akan menggeser bilangan selanjutnya sampai bilangan itu sesuai dan terakhir menyisipkannya.
Keuntungan :
+ Penulisan kode yang mudah.
+ Mudah dipahami.
Kelemahan :
– Tidak sesuai jika data yang dimiliki banyak.
4. Quick Sorting : (ADVANCED)
Quick Sorting memiliki 4 variabel yang berguna untuk mencocokan value nilai agar nilai-nilai dalam di sorting secara cepat.
Keuntungan :
+ Bekerja dengan cepat.
+ Sangat sesuai jika data yang dimiliki banyak.
Kelemahan :
– Tidak sesuai jika data yang dimiliki sedikit.
– Penulisan kode yang cukup rumit.
– Butuh waktu yang lebih untuk memahami ini dibandingkan dengan Basic Sorting.
2. Merge Sorting : (ADVANCED)
Merge Sorting akan mengelompokan semua data menjadi 2 dan mengatur posisinya agar sesuai lalu setelah proses itu selesai data-data akan dibentuk menjadi 4 dalam 1 kelompok dan diurutkan kembali dan seterusnya sampai semua bilangan menjadi terurut.
Keuntungan :
+ Bekerja dengan cepat.
+ Sangat sesuai jika data yang dimiliki banyak.
Kelemahan :
– Tidak sesuai jika data yang dimiliki sedikit.
– Penulisan kode yang cukup rumit.
– Butuh waktu yang lebih untuk memahami ini dibandingkan dengan Basic Sorting.
Kesimpulan :
Melihat dari kekuatan dan kelemahan dari masing-masing Sorting, maka dapat disimpulkan bahwa tidak ada yang terbaik ataupun terhebat, namun semua itu bergantung pada selera Programmer sendiri dan juga data yang akan di sorting.
Searching sendiri berkesinambungan dengan Sorting karena Searching adalah mencari sebuah data dan Sorting mengurutkan semua data. Ketika semua data telah terurut maka akan lebih mudah untuk mencarinya.
3 Jenis Searching :
1. Linear Searching :
Linear Searching bekerja dengan cara mencocokan key dengan data sehingga apabila key tidak ditemukan maka data tidak ada. Linear ini sangat berguna ketika data yang kita miliki tidak tersorting.
2. Binary Searching :
Efektif penggunannya dalam data kecil dan belum disortir.
——————————————————————————————————————-
Algoritma
n : total record of array x.
left=0, right= n-1.
mid =(int) (left + right)/2.
If x[mid]=key then index = mid. Finished.
If x[mid]key then right = mid-1.
If left £ right and x[mid] ¹ key, then repeat point 3.
If x[mid] ¹ key then index = -1. Finished
——————————————————————————————————————-
3. Interpolation search :
Efektif jika data sudah disortir dan lokasi pencarian data mendetail.
——————————————————————————————————————-
Algoritma :
In the interpolation search, we’ll split the data according to the following formula:
If data[mid] = sought data, data has been found, searching is stopped and return mid.
If data[mid]!= sought data, repeat point ** (**Searching is continued while sought data > data[min] and sought data sought data, high = mid – 1
If data[mid] < sought data, low = mid + 1
It will be looped until the requirements point ** are not met thenreturn (-1), data not found
——————————————————————————————————————-