Page 161 - MODUL ALGORTIMA DAN PEMROGRAMAN
P. 161
F. Rangkuman
Algoritma pencarian digunakan untuk menemukan item data tertentu dalam suatu
pengumpulan data. Algortima pencarian terbagi menjadi beberapa macam yaitu sequential
search, sequential search dengan sentinel, binary search, dan interpolation search. 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 sentinel ini adalah suatu proses pencarian yang memiliki elemen
fiktif pada elemen data array. Binary search adalah metode pencarian suatu data atau elemen
di dalam suatu array dengan kondisi data dalam keadaan terurut. Dan interpolation search
adalah pengembangan dari binary search, persamaan keduanya yaitu sama sama digunakan
untuk mencari suatu nilai pada data yang telah terurut.
G. Soal Latihan
1. Buatlah program dalam bahasa C++ untuk mencari data tertentu dalam array menggunakan
algoritma pencarian sequential search. Array dan data yang akan dicari dapat diinputkan
oleh pengguna.
2. Buatlah program dalam bahasa C++ untuk mencari data tertentu dalam array menggunakan
algoritma pencarian sequential search sentinel. Array dan data yang akan dicari dapat
diinputkan oleh pengguna.
3. Buatlah program dalam bahasa C++ untuk mencari data tertentu dalam array yang terurut
menggunakan algoritma pencarian binary search. Array dan data yang akan dicari dapat
diinputkan oleh pengguna.
4. Buatlah program dalam bahasa C++ untuk mencari data tertentu dalam array yang terurut
menggunakan algoritma pencarian interpolation search.
5. Anda diberikan sebuah daftar angka bulat yang sudah diurutkan secara menaik. Tugas Anda
adalah menulis fungsi untuk mencari sebuah angka tertentu dalam daftar tersebut
menggunakan algoritma binary search.
[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]
Kasus:
• Cari angka 67 dalam daftar tersebut.
• Cari angka 50 dalam daftar tersebut.
Petunjuk:
• Jika angka ditemukan, kembalikan indeks di mana angka tersebut berada.
• Jika angka tidak ditemukan, kembalikan nilai -1.
138