Page 153 - MODUL ALGORTIMA DAN PEMROGRAMAN
P. 153

A.  Sequential Search

                      Sequential  search  (pencarian  beruntun)  adalah  metode  pencarian  yang  paling  mudah.
                  Sequential  search  adalah  proses  membandingkan  setiap  elemen  array  satu  persatu  secara

                  beruntun yang dimulai dari elemen pertama hingga elemen yang dicari ditemukan atau hingga
                  elemen terakhir dari  array. Sequential search  dapat dilakukan terhadap elemen  array yang

                  belum terurut atau terhadap elemen array yang terurut. Perbedaan dari keduanya terletak pada

                  efisiensi operasi perbandingan yang dilakukan.
                      Dengan kata lain sequential search akan mencari data dengan cara membandingkannya

                  satu persatu dengan data yang ada. Prosesnya tentu saja akan singkat jika data yang diolah
                  sedikit, dan akan lama jika data yang diolah banyak. Metode ini disarankan untuk digunakan

                  pada data yang sedikit saja.
                  Contoh: Diberikan suatu array nilai dengan banyak elemen 8 seperti berikut:


                                              10  15  9     3   25  65  15  30

                                               1   2    3   4    5    6   7    8


                  Misalkan nilai yang dicari adalah: x = 15
                  1.  Jika  yang  diharapkan  hanya  menyatakan  ada  atau  tidak ada,  maka  pemeriksaan hanya

                      dilakukan terhadap 10 dan 15, karena data ditemukan artinya data yang dicari = 15, maka
                      proses pencarian berhenti dan akan tampil pesan “15 ditemukan”.

                  2.  Jika yang diharapkan adalah menampilkan data yang sama dan semua posisinya, maka

                      pemeriksaan dilakukan terhadap seluruh data 10, 15, 9, 3, 25, 65, 15, dan 30. Pada saat
                      pemeriksaan  dilakukan  dan  ternyata  sama,  maka  posisi  data  yang  sama  tersebut  akan

                      disimpan dalam variabel juga (tipe array) dan hitung banyaknya data yang sama, sehingga
                      akan tampil pesan “15 ditemukan sebanyak 2, yaitu pada posisi 2 dan 7”.


                      Karena kita hanya menampilkan pesan “ditemukan” atau “tidak ditemukan”. Jika data yang
                  dicari  ternyata  terdapat  pada  posisi  pertama  atau  ditengah,  maka  pesan  “ditemukan”  akan

                  ditampilkan  dan  proses  selesai  dan  berhenti,  artinya  ada  kemungkinan  pencarian  tidak
                  dilakukan hingga ke data terakhir. Maka dengan demikian, perulangan yang efektif digunakan

                  adalah perulangan  repeat-until, karena tidak diketahui dengan pasti berapa kali perulangan

                  dilakukan, tetapi pasti dilakukan paling tidak satu kali pencarian.

                  B.  Sequential Search dengan Sentinel

                      Pencarian dengan algoritma sequential search sentinel ini adalah suatu proses pencarian

                  yang  memiliki  elemen  fiktif  pada  elemen  data  array.  Penambahan  elemen  fiktif  ini  biasa
                                                                                                         130
   148   149   150   151   152   153   154   155   156   157   158