SEARCHING(binary_search & squential_search)

Pencarian (Searching)

Proses pencarian adalah menemukan harga (data) tertentu di dalam sekumpulan harga yang bertipe sama (tipe dasar atau tipe bentukan).Pada suatu data seringkali dibutuhkan pembacaan kembali informasi dengan cara searching. Tempat pencarian data dapat berupa array dalam memori, bisa juga pada file pada external storage.


Binary search

Metode yang kedua adalah binary search, pada metode pencarian ini, data harus diurutkan terlebih dahulu. Pada metode pencarian ini, data dibagi menjadi dua bagian (secara logika), untuk setiap tahap pencarian.

Algoritma binary search :

    1. Data diambil dari posisi 1 sampai posisi akhir N

    2. Kemudian cari posisi data tengah dengan rumus: (posisi awal + posisi akhir) / 2

    3. Kemudian data yang dicari dibandingkan dengan data yang di tengah, apakah sama atau lebih kecil, atau lebih besar?

    4. Jika lebih besar, maka proses pencarian dicari dengan posisi awal adalah posisi tengah + 1

    5. Jika lebih kecil, maka proses pencarian dicari dengan posisi akhir adalah posisi tengah – 1

    6. Jika data sama, berarti ketemu.

Ilustrasi>>>>>>

BINARY1

Contoh source binary search :

BINARY2

Output :

BINARY3





Sequential Search

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.

¨          Misalnya terdapat array satu dimensi sebagai berikut:

untitled

d2

¨          Kemudian program akan meminta data yang akan dicari, misalnya 6.

¨          Jika ada maka akan ditampilkan tulisan “ADA”, sedangkan jika tidak ada maka akan ditampilkan tulisan “TIDAK ADA”.

Program

#include <stdio.h>

#include <conio.h>

void main(){

clrscr();

int data[8] = {8,10,6,-2,11,7,1,100};

int cari;

int flag=0;

printf(“masukkan data yang ingin dicari = “);      scanf(“%d”,&cari);

for(int i=0;i<8;i++){

if(data[i] == cari) flag=1;

}

if(flag==1) printf(“Data ada!\n”);

else printf(“Data tidak ada!\n”);

}

~ by rusdia on July 1, 2009.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

 
%d bloggers like this: