sequential search using c

Sequential search adalah salah satu algoritma yang digunakan untuk memecahkan masalah pencarian pada suatu data array. Cara kerja dari algoritma ini adalah dengan menelusuri elemen-elemen array dari awal sampai akhir, dimana data tidak perlu diurutkan terlebih dahulu.

Kemungkinan terbaik(best case) dari algoritma ini adalah jika data yang dicari berada pada elemen array yang terdepan sehingga waktu yang dibutuhkan untuk pencarian data semakin singkat. Sebaliknya, akan mencapai kondisi terburuk(wors case) apabila data yang dicari berada pada elemen akhir.



Metode pencarian beruntun atau linear (sequential search) dapat dipergunakan apabila:

Nilai-nilai tersebut belum berurutan.
Nilai-nilai tersebut sudah berurutan, tetapi struktur data yang dipergunakan untuk menyimpan nilai-nilai tersebut adalah linked list.

berikut adalah contoh sources code dalam bahasa c


#include "stdio.h";
#include "string.h";

void input();
void sequential();
void tampil();

char nama[5][10]={{"kata1"},{"kata2"},{"kata3"},{"kata4"},{"kata5"}};
char key[10],nama2[5][10];
char hasil[10];
int n=5,index;
void main()
{
 
 input();
 tampil();
 
}

void input()
{
 int pil;
 printf("masukan keyword:");
 scanf("%s",&key);
 puts("lakukan pencarian:");
 puts("1.sequential");
 puts("2.binary");
 puts("");
 puts("");
 printf("masukan pilihan:");
 scanf("%d",&pil);
 if(pil==1)
 {sequential();}
 else if(pil==2)
 {binary();}
 else{puts("pilihan anda salah besar!!");}
}

void sequential()
{
 int i=0;
 int ketemu=0;
 
 while((ketemu == 0 )and(i < n))
 {
  if(strcmp(nama[i],key)==0)
  {ketemu=1;}
  else
  {i++;}
 }
 if(ketemu==1)
 { strcpy(hasil,nama[i]);
 index=i; }
 else
 {puts("data tidak ditemukan");}

void tampil(){
 printf("%s",hasil);
}

Posting Komentar