Saturday, March 6, 2010

Pencarian sekuensial dengan sentinel



Pencarian sekuensial dengan sentinel

Pencarian ini dilakukan dengan cara menelusuri data yang ada di array dan membandingkannya dengan data yang dicari sampai data yang dicari ditemukan. Oleh karena itu, maka untuk mengatasi apabila data yang dicari tidak ada di array, maka digunakan sentinel yaitu suatu Pencarian yang menggunakan sentinel selalu dapat menemukan data. Tetapi sebelum pencarian data, ada proses pengisian sentinel (data terakhir diisi dengan data yang dicari),

Contoh 1:
Data yang dicari adalah : 7
Banyak data : 5
Array :

5
8
7
6
9


Ketika pencarian, nilai yang dicari diisikan ke urutan terakhir.

Sehingga array berisi :

5
8
7
6
9
7

Sehingga ketika pencarian dengan teknik ini, maka pencarian akan selalu menemukan data yang dicari. Untuk menentukan kondisi apakah data tersebut ditemukan atau tidak adalah dengan memeriksa di index ke berapa data tersebut ditemukan. Jika index data bernilai masih di bawah atau sama dengan banyak data yang ada di array, maka itu berarti data ditemukan dan jika index data melebihi dari banyak data yang ada di array berarti data tidak ditemukan.

Untuk kasus di atas, maka pencarian akan berakhir pada index ke-3, karena data ada. Tetapi kalau data yang dicari adalah 10, maka array akan berisi :
5
8
7
6
9
10
Sehingga pencarian akan berakhir pada index ke-6. Karena 6 lebih besar dari 5 (banyak data), itu berarti data tidak ditemukan.
Kekurangan dari algoritma ini adalah kita harus menyediakan 1 tempat untuk sentinel.



Contoh script berbahasa C untuk pencarian menggunakan sentinel adalah sebagai berikut :

int cari_sekuensial_sentinel(int data[],int banyakdata,
int dicari)

{ int i=0;
data[banyakdata]=dicari;//pengisian sentinel
while(data[i]!=dicari)//selama belum ditemukan
{
i++;
}
if(i
return i+1;
else
return 0;
}

Cara penggunaan fungsi pencarian ini adalah :

int a[6]={10,22,34,42,55,0};//0 untuk sentinel
int bd=5;
int posisi;
clrscr();
view_array(a,bd);printf("\n");
posisi=cari_sekuensial_sentinel(a,bd,34);
if(posisi!=0)
printf("Data ditemukan di posisis : %d\n",posisi);
else
printf("Data tidak ditemukan\n");

Download Artikel








Silahkan Pasang Komentar Anda




ShoutMix chat widget



0 komentar:

Post a Comment

Webmaster Forum

Error loading feed.

Categories

Action (6) add-ons (2) Adventure (3) Advertising (3) affiliate programs (2) algoritma dan pemrograman 1 (4) algoritma dan pemrograman 2 (3) Aljabar Linier Matriks (2) aplikasi (12) array (2) Basis Data (3) basis data. programming project (1) berita (1) browser (3) bug (1) buku tamu (1) Business (2) c++ (1) CERITA LUCU (3) clone (1) cms (9) Comedy (1) commedy (1) Computers (3) corel draw (1) Database (3) desktop (1) domain (1) Drama (3) Dreamweaver (3) driver (1) E-book (43) E-book Adsense (2) e-book hacking (4) E-book Humor (1) E-book Islam (1) E-book Jaringan Komputer (1) E-book Kesehatan (1) E-book Komputer (23) E-Book Pekerjaan (2) e-book photoshop (4) Entertainment (1) etika (1) exploit (5) facebook (5) Fantasy (2) firefox (2) Forum (1) gambar (1) Games (2) gitar (1) grafis (1) Hack (1) hacking (15) hacking joomla (2) Hacking Wordpress (3) HANDPHONE (12) hollywood (7) hosting (3) HUMOR (3) indonesia (1) internet (46) iseng (3) Islam (1) jaringan (2) java games (1) kata mutiara (1) Komputer (8) Komputer. open source (1) lan (1) Linux (4) majalah (1) Marketing (2) materi kuliah (15) Media (1) Money (2) movie (7) Mp3 (2) music (1) MySql (2) Mystery (1) networking (2) Open Source (13) Oracle (1) pemrograman non prosedural (3) pemrograman shell (1) Pengantar Teknologi Informasi (2) pengertian (1) photo design (1) photoshop (4) PHP (2) problem solving (1) Products (3) Programming (3) prolog (3) sahabat (1) Sci-Fi (3) script (4) Search Engine Optimization (5) security (7) SEKOLAH (1) seo (3) Services (3) seven (1) Shopping (1) sistem operasi (2) situs ngetop (2) SMS (3) SNMPTN (1) SOFTWARE (33) spam (1) SQL (1) streaming (1) Super Heroes (1) tampilan (1) Thriller (3) tips (1) Tips dan Trik (74) Trik Windows XP (15) Tutorial blog (18) tutorial drupal (2) tutorial html (2) Tutorial Joomla (14) tutorial moodle (1) tutorial wordpress (9) TV (1) ubuntu (13) UII (1) wall (1) wap (1) Web Design (33) web programming (2) webcam (1) Webdesign (1) youtube (1)
 
FREE AND HAPPY ALWAYS Copyright © 2009-2010 Blogger Template Designed by Bie Blogger Template

PUTRA OKU TIMUR BLOG FRIENDS
Reviews Music Indie Oku Timur||Campang Tiga||Ato||Daryanto||Tax||Shasya||Dewi||Fajar||Hendrie||Ria Imut||My Own Gallery||Penulis Mania||Saung Web||Ipan||Goceng Blog||Guntur Setyo||Mundo Belitang||Edwar||Teknologi||seo||eno||oob||Black Warrior||Wardi Sukoharjo||Chef Krendo||Maranai||prost||Traveller||Mas Muji||Pambudi||Pandu||Kabar Maya||Lie||Harnet||rayapost||juandry||fianmuse||inipulsaku||Tips dan Trik Blogging||Hidup Sehat||sastrafresh||Martapura Blogger||Salsa Kids||
Nofasonic WeblogPhotobucketBlog Directory Cara Membuat Blog EBOOK GRATISBlog Ratings'WavyKomunitas Blogger WongKito