POLITEKNIK SEKAYU

http://polsky.ac.id/

Selasa, 14 Januari 2014

algoritma pencarian



Algoritma Pencarian
Pencarian merupakan proses yang fundamental dalam pengolahan data.
Proses pencarian adalah menemukan nilai (Data) tertentu di dalam sekumpulan data yang bertipe sama (baik bertipe dasar atau bertipe bentukan).
Sebagai contoh untuk mengubah (update) data tertentu, langkah pertama yang harus dilakukan adalah mencari keberadaan data tersebut di dalam kumpulannya.
Jika data yang dicari ditemukan,
maka data tersebut dapat diubah dinilainya dengan data yang baru Aktivitas awal yang sama juga dilakukan pada prose penambahan (insert) data baru.

Spesifikasimasalah

10
31
47
89
1
51
87
90
12
0
1
2
3
4
5
6
7
8

Macam – macam Metode Algoritma Pencarian yaitu sebagai berikut :
1.       Algoritma Pencarian Beruntun (sequential search)
Adalah Algoritma pencarian yang paling sederhana Nama lainnya adalah linear search.Proses membandingkan setiap elemen larik satu per satu secara beruntun, mulai dari elemen pertama sampai elemen yang dicari ditemukan, atau seluruh elemen sudah diperiksa.
·         Contoh :
Misalkan Elemen yang akan dicariadalah : 30

·         Contoh program
#include <stdio.h>
int main ()
{
int nilai[4];
nilai[0]=10;
nilai[1]=20;
nilai[2]=30;
nilai[3]=40;
      int nilai_yang_dicari=30;
      int i;
      int hasil=0;
      for (int i=0;i<=3;i++)
      {
                  if (nilai[i]==nilai_yang_dicari);
                  {
                              hasil=i;
                  }          }
                  printf("Nilai %d ditemukan di index ke %d",nilai_yang_dicari,hasil);
      return 0;
}
outputnya:
 

1.       Algoritma Pencarian Bagi Dua (Binary Search)
Algoritma Pencarian Bagi dua dilakukan dengan cara membagi array menjadi 2, lalu proses pencarian dimulai, baik dari sisi sebelah kiri atau sebelah kanan
Misalkan yang di cari adalah 31
i+j/2 =1 + 7/2 = 4
Apakah index yang ketujuh adalah 31 (!=)
Putuskan apakah mencari dari kiri atau kanan
Misal dari kanan
Cont
i=1;
J=4;
i+j/2
(1+4)/2=2
Putuskan Mencari dari kiri atau kanan
i=1;
J=2
1+2/2=1


Sequential vs Binary
Algoritma Beruntun dapat digunakan baik untuk data yang belum terurut maupun untuk data yang sudah terurut Sedangkan algoritma bagi dua hanya cocok digunakan untuk mencari data yang sudah terurut saja.

 

Tidak ada komentar:

Posting Komentar