“TI
POLITALA ALPRO 2C”
[Tugas
Kuliah] Algoritma dan Pemograman II
“SEARCHING
(Sequential)”
A.
Pengertian
Searching
Searching
adalah pencarian data dengan cara menelusuri data-data tersebut. Tempat
pencarian data dapat berupa array dalam memori (pencarian internal), bisa juga
pada file pada external storage (pencarian external).
Ada dua macam teknik pencarian yaitu pencarian
sekuensial dan pencarian biner. Perbedaan dari dua teknik ini terletak pada
keadaan data. Pencarian sekuensial digunakan apabila data dalam keadaan acak
atau tidak terurut (contoh: sequential search). Sebaliknya, pencarian biner
digunakan pada data yang sudah dalam keadaan urut (contoh: Binary search dan
interpolation search).
B.
Metode
Pencarian
1. Metode
Pencarian Beruntun
Konsep
yang digunakan dalam metode ini adalah membandingkan data-data yang ada dalam
kumpulan tersebut, mulai dari elemen pertama sampai elemen ditemukan, atau
sampai elemen terakhir.
2. Metode
Pencarian Bagi Dua
Metode
ini diterapkan pada sekumpulan data yang sudah terurut (menaik atau menurun).
Metode ini lebih cepat dibandingkan metode pencarian beruntun. Data yang sudah
terurut menjadi syarat mutlak untuk menggunakan metode ini.
Konsep
dasar metode ini adalah membagi 2 jumlah elemennya, dan menentukan apakah data
yang berada pada elemen paling tengah bernilai sama, lebih dari atau kurang
dari nilai data yang akan dicari. Jika bernilai sama, maka langsung data yang
dicari ditemukan. Jika data di elemen terurut naik, maka jika data yang berada
di tengah kurang dari data yang dicari, maka pencarian selanjutnya berkisar di
elemen tengah ke kanan, dan begitu seterusnya sampai ketemu atau tidak sama
sekali. Dan sebaliknya untuk nilai data yang berada di tengah lebih dari data
yang dicari, maka pencarian selanjutnya berkisar di elemen tengah ke kiri, dan
begitu seterusnya sampai ketemu atau tidak sama sekali. Dan demikian sebaliknya
untuk data yang terurut menurun. Dalam hal ini tentukan indeks paling awal dan
indeks paling akhir, untuk membagi 2 elemen tersebut.
1. Indeks
awal = i, dimana nilai i, pada awalnya bernilai 0;
2. Indeks
akhir = j, dimana nilai j, pada awalnya bernilai sama dengan jumlah elemen.
C.
Sequential
Search (berurutan)
Adalah
suatu teknik pencarian data dalam array (1 dimensi) yang akan menelusuri semua
elemen-elemen array dari awal sampai akhir, dimana data-data tidak perlu
diurutkan terlebih dahulu. Pencarian berurutan menggunakan prinsip sebagai
berikut : data yang ada dibandingkan satu per satu secara berurutan dengan yang
dicari sampai data tersebut ditemukan atau tidak ditemukan.
Algoritma
pencarian berurutan dapat dituliskan sebagai berikut :
1. i ← 0
2. ditemukan ←
false
3. Selama (tidak
ditemukan) dan (i <= N) kerjakan baris 4
4. Jika (Data[i] =
x) maka ditemukan ← true, jika tidak i ← i + 1
5. Jika
(ditemukan) maka i adalah indeks dari data yang dicari, jika tidak data tidak
ditemukan.
D.Contoh
Program Sequential Search
Program
di bawah ini menjelaskan tentang pencarian data angka secara berurutan :
E.
Hasil
Running
Di
bawah ini adalah hasil runningan dari program Sequential Search tentang
pencarian data secara berurutan :
SUMBER
:
http://yogapratama1205.blogspot.com/2015/06/searching-sequential-search-dan-binarry.html