Page 256 - MODUL ALGORTIMA DAN PEMROGRAMAN
P. 256

Output:
                  Masukkan jumlah elemen array: 4
                  Masukkan nilai-nilai array (pastikan terurut):
                  6
                  7
                  8
                  9
                  Masukkan nilai yang ingin dicari: 4
                  Data 4 tidak ditemukan dalam array.


                  Penjelasan:
                  1)  Fungsi interpolationSearch:

                      •  Fungsi ini menerima 3 parameter:
                          o  array: Array yang akan dicari datanya (tipe int).

                          o  n: Jumlah elemen dalam array (tipe int).

                          o  dataDicari: Nilai yang ingin dicari dalam array (tipe int).
                      •  Fungsi ini mengembalikan nilai int:

                          o  Indeks elemen array yang berisi nilai dataDicari jika ditemukan.
                          o  Nilai -1 jika data tidak ditemukan.

                      •  Algoritma pencarian menggunakan loop while dengan kondisi low <= high.

                          o  low dan high mewakili indeks awal dan akhir dari bagian array yang sedang dicari.
                      •  Pada setiap iterasi loop:

                          o  Hitung  mid menggunakan rumus interpolasi yang melibatkan nilai  dataDicari,

                             array[low], dan array[high].
                          o  Bandingkan array[mid] dengan dataDicari:

                              ▪  Jika sama, kembalikan mid sebagai indeks yang ditemukan.

                              ▪  Jika array[mid] < dataDicari, perbarui low menjadi mid + 1 untuk mencari
                                  di bagian kanan array.

                              ▪  Jika  array[mid]  >  dataDicari,  perbarui  high  menjadi  mid  -  1  untuk
                                  mencari di bagian kiri array.

                      •  Jika loop selesai dan low > high, artinya data tidak ditemukan, kembalikan -1.

                  2)  Fungsi main:
                      •  Sama  seperti  pada  program  binary  search  sebelumnya,  fungsi  ini  mendeklarasikan

                         variabel, meminta input dari pengguna, dan menampilkan hasil pencarian.
                      •  Perbedaan utama terletak pada pemanggilan fungsi pencarian:

                          o  Dalam program ini, fungsi interpolationSearch digunakan untuk mencari data dengan

                             parameter array, jumlah elemen, dan nilai yang dicari.

                                                                                                         233
   251   252   253   254   255   256   257   258   259   260   261