Pencarian merupakan
proses fundamental dalam pengelolaan data. Proses pencarian menemukan nilai
tertentu dalam himpunan data yang bertipe sama. Apabila data yang dicari
terdapat dalam himpunan data tersebut, ditentukan pula posisi dari data yang
dicari pada himpunan.
Pada
himpunan data tidak terurut, dapat digunakan metode pencarian sekuensial (sequencial search) untuk mencari data.
Sedangkan pada himpunan data tidak terurut dapat digunakan metode pencarian
sekuensial (sequencial search) dan
biner (binary search). Berikut ini
merupakan penjelasan dari metode pencarian tersebut.
1. Pencarian
Sekuensial (Sequencial Search)
Metode pencarian sekuensial merupakan
proses membandingkan setiap elemen dalam himpunan satu per satu secara terurut,
mulai dari elemen pertama sampai dengan elemen yang dicari ditemukan atau
seluruh elemen sudah dibandingkan. Sebagai contoh, misalkan data terurut
membesar. Pencarian dimulai dari data pertama sampai dengan data terakhir.
Pencarian dihentikan apabila data yang dicari ditemukan atau data yang
dibandingkan pada proses pencarian sudah lebih besar dari data yang dicari.
Procedure sequensialSort (var
A : Tabel; N : integer; x :
tipedata; var iSearch : integer);
{IS : A adalah tabel dengan banyaknya
data N. x adalah data yang dicari dan
bertipe sama dengan elemen tabel}
{FS : iSearch <> 0 bila A[iSearch]
= x, iSearch = 0 bila x tidak ditemukan
di A}
Var
i
: integer; {counter}
Begin
if (N = 0) then iSearch := 0 {tabel data 0}
else
begin
i:=1;
while ((A[i].NIM < x) and (i < N)) do
i:=i+1;
if (A[i].NIM = x) then
iSearch
:= i;
else
iSearch
:= 0;
end;
end;