SEARCHING
<<
Diyah Utami Kusumaning Putri, S.Kom., M.Sc., M.Cs.
Pencarian data diperlukan untuk mencari informasi khusus dari
sekumpulan data tetapi informasi mengenai lokasi dari data
yang dicari belum diketahui sebelumnya
int main(){
bool found = false;
string key;
struct Student {
string studentID;
string name;
float score;
};
if(!found){
cout<<"The data is not found";
}
return 0;
}
Pencarian Biner (Binary Search)
● Pencarian dengan metode biner atau bagi dua (binary
search) hanya dapat dilakukan pada data yang sudah
terurut.
● Pendekatan yang dilakukan adalah dengan membagi
jangkauan (range) nilai yang akan dicari.
● Metode biner akan mencari data pada kelompok
sebelah kiri elemen tengah apabila lebih kecil dari
nilai elemen di tengah, dan akan mencari data pada
kelompok sebelah kanan elemen tengah apabila lebih
besar dari nilai pada elemen di tengah.
● Keuntungan metode ini berupa waktu pencarian yang
lebih cepat, namun memiliki kerugian dimana metode
ini hanya dapat diterapkan pada data yang telah
diurutkan saja.
Pencarian Biner (Binary Search)
5 3 7 2 0 9 4 1 8 6
0 1 2 3 4 5 6 7 8 9
0 1 2 3 4 5 6 7 8 9
0 1 2 3 4 5 6 7 8 9
0 1 2 3 4 5 6 7 8 9
Program Pencarian Biner (Binary Search)
#include <iostream>
using namespace std;
int main(){
bool found = false;
int data [] = {0,1,2,3,4,5,6,7,8,9};
int i=0;
int j = sizeof(data)/sizeof(data[0]);
int mid, key;
if(!found){
cout << "The data is not found";
}else{
cout << "The data is found";
}
return 0;
}
“Life is trying things to see if
they work”
—Ray Bradbury