Dokumen tersebut membahas tentang searching pada teknik pemrograman. Metode searching yang dijelaskan adalah sequential search dan binary search. Sequential search digunakan untuk mencari suatu nilai pada array satu dimensi, sedangkan binary search hanya dapat digunakan pada array yang terurut. Kedua metode searching menjelaskan algoritmanya untuk mencari nilai tertentu, nilai maksimum, dan nilai minimum.
2. 2
Pengertian
Yang dimaksud dengan Searching pada teknik
pemrograman adalah berfungsi untuk mencari sebuah
data dengan cara menelusuri tempat penyimpanan data
tersebut. Tempat penyimpanan tersebut dapat berupa
array dalam memory atau dalam suatu file pada
external storage.
Beberapa metode searching diantaranya adalah :
– sequential search
– binary search
3. 3
Algoritma sequential search mencari
ADA atau TIDAK ADA
Pada array 1 dimensi yang sudah ada isi/datanya,dicari
sebuah nilai apakah ada atau tidak pada data array
tersebut. Misalnya pada variabel array 1 dimensi A
dengan jumlah N elemen berisi data-data dengan tipe
data integer, dicari nilai yang diwakili variabel x (bisa
berupa input) yang juga bertipe data integer. Diperiksa
apakah data-data pada A ada atau tidak ada yang
nilainya sama dengan nilai pada x, jika ada maka
outputnya mencetak kata “Ada” jika tidak akan
mencetak kata-kata “Tidak Ada”.
4. 4
Metode Sequential Search
• Pencarian beruntun dapat digunakan untuk
melakukan pencarian data baik pada array yang
terurut maupun yang belum terurut
• Proses pencarian
1. Membaca array data
2. Menentukan data yang dicari
3. Mulai dari data pertama sampai dengan data terakhir,
data yang dicari dibandingkan dengan masing-masing
data dalam array
a. Jika data yang dicari tidak ditemukan maka semua data
dalam elemen dibandingkan sampai selesai
b. Jika data yang dicari ditemukan maka perbandingan akan
dihentikan
8. 8
Algoritma sequential search mencari
nilai MAXIMUM dan MINIMUM
Proses searching yang dilakukan adalah untuk mencari
nilai yang terbesar (maximum) dan atau nilai yang
terkecil (minimum) pada deret nilai suatu variabel
array. Sama dengan pada proses searching sebelumnya
algoritma untuk menjelaskan metode ini dimisalkan
pada variabel array 1 dimensi A dengan jumlah N
elemen berisi data-data dengan tipe data integer.
11. 11
Metode Binary Search
• Pencarian biner hanya digunakan pada data yang
sudah terurut
• Proses pencarian binary search
1. Membaca array data
2. Apabila array belum terurut maka diurutkan dahulu
3. Menentukan data yang akan dicari
4. Menentukan elemen tengah dari array
5. Jika elemen tengah sama dengan data yang dicari
maka pencarian selesai
6. Jika nilai elemen tengah tidak sama dengan data yang
dicari, maka
a. Jika nilai elemen tengah lebih besar daripada data yang
dicari maka pencarian dilakukan pada setengah array
pertama
b. Jika nilai elemen tengah lebih kecil daripada data yang
dicari maka pencarian dilakukan pada setengah array
berikutnya
12. 12
Algoritma Binary Search
ketemu = 0;
tengah = (n/2) + 1;
eltengah = data[tengah];
i = 0;
if(dt == eltengah){
ketemu = 1;
posisi = tengah; }
else {
if(dt < eltengah){
i = 0;
while(ketemu == 0 && i < tengah && data[i] <= dt) {
if(data[i] == dt) {
ketemu = 1;
posisi = i; }
else
i = i + 1; }
}
else {
i = tengah + 1;
while(ketemu == 0 && i < n && data[i] <= dt) {
if(data[i] == dt) {
ketemu = 1;
posisi = i; }
else
i = i + 1;
} } }