Searching
Searching (sequential search dan binarry search)
Pengertian Searching adalah pencarian data dengan
cara memeriksa data-data yang ada, tempat dicarinya data dapat berupa array
dalam memori (pencarian internal), bisa juga pada file pada external storage
(pencarian external).
sequential search
Pengerian sequential search Adalah sebuah cara
pencarian data dalam array (1 dimensi) yang akan memeriksa semua elemen-elemen
array dari pertama sampai terakhir, dimana data-data tidak usah diurutkan dulu.
Pencarian berurutan menggunakan prinsip seperti: data yang ada dibandingkan
satu per satu secara berurutan dan data yang kita cari akan dilakukan
pemeriksaan sampai data tersebut ditemukan atau tidak ditemukan.
Contoh Program sequential search:
#include
#include
#include
using namespace std;
void main()
{
int i;
int cari, ditemukan;
int Array[100];
printf("\t
=========================================================\n");
printf("\t |
JALURBELAKANG.BLOGSPOT.COM
|\n");
printf("\t =========================================================\n");
printf("\t | PROGRAM SEQUENCIAL
SEARCH |\n");
printf("\t
|=======================================================|\n");
printf("\t | |\n");
printf("\t | >Ricky satria (140010039) |\n");
printf("\t |
|\n");
printf("\t |
|\n");
printf("\t | Compiled With Visual
Studio |\n");
printf("\t
|========================================================\n");
printf("\t | BA141 |\n");
printf("\t | Sistem Komputer - STIKOM BALI |\n");
printf("\t
=========================================================\n");
printf("\t | Press Any Key To Continue |\n");
printf("\t
=========================================================\n");
printf("\t ");
getchar();
system("cls");
cout << " Silahkan masukkan 8 buah
data \n\n\n";
for (i = 1; i <= 8; i++)
{
cout << "masukkan data ke - " << i << endl;
cin >> Array[i];
}
cout << endl;
cout << "Masukkan data yang ingin anda dicari : ";
cin >> cari;
ditemukan = 0;
for (i = 0; i <= 7; i++)
{
if (Array[i] == cari)
{
ditemukan = 1;
cout << "\nData anda pada indeks ke-" << i<< endl;
}
}
if (ditemukan == 0){
cout << " Data anda tidak ditemukan!!!\n";
}
getchar();
system("pause");
}
Hasil Program di atas:
Binary search
Binary search adalah sebuah cara
pencarian dengan cara membagi data menjadi dua bagian setiap kali terjadi
proses pencarian untuk menemukan nilai tertentu dalam sebuah larik (array)
linear. Sebuah pencarian biner mencari nilai tengah (median), melakukan sebuah
pembandingan untuk menentukan apakah nilai yang dicari ada sebelum atau
sesudahnya, kemudian mencari setengah sisanya dengan cara yang sama.
Contoh Program Binary Search:
#include
#include
#include
using namespace std;
int main()
{
int A[10], i, j, k, tkr, top, bottom, middle, tm;
printf("\t
=========================================================\n");
printf("\t |
JALURBELAKANG.BLOGSPOT.COM
|\n");
printf("\t
=========================================================\n");
printf("\t | PROGRAM BINARY SEACRH |\n");
printf("\t |=======================================================|\n");
printf("\t |
|\n");
printf("\t | >Ricky satria (140010039) |\n");
printf("\t | |\n");
printf("\t |
|\n");
printf("\t | Compiled With Visual
Studio |\n");
printf("\t |========================================================\n");
printf("\t | BA141 |\n");
printf("\t | Sistem Komputer - STIKOM BALI |\n");
printf("\t
=========================================================\n");
printf("\t | Press Any Key To Continue |\n");
printf("\t
=========================================================\n");
printf("\t ");
getchar();
system("cls");
for (i = 0; i<10 i="" o:p="">10>
{
printf("Data ke-%d : ",
i + 1);
scanf_s("%d",
&A[i]);
}
printf("Masukkan
data yang akan dicari : ");
scanf_s("%d", &k);
for (i = 0; i<10 i="" o:p="">10>
{
for (j = i + 1; j<10 j="" o:p="">10>
{
if (A[i]>A[j])
{
tkr = A[i];
A[i] = A[j];
A[j] = tkr;
}
}
}
tm = 0;
top = 9;
bottom = 0;
while (top >= bottom)
{
middle = (top + bottom) / 2;
if (A[middle] == k)
{
tm++;
}
if (A[middle]
{
bottom = middle + 1;
}
else
{
top = middle - 1;
}
}
if (tm>0)
{
printf("Data %d yang dicari ada dalam array\n", k);
}
else
{
printf("Data tidak diketemukan dalam array\n");
}
getchar();
system("pause");
return 0;
}
Hasil Program di atas:
Sekian penjelasan saya tentang searching jika ada yang kurang jelas bisa bertanya di kolom komentar. Terima Kasih :)
Sumber referensi:
Data struktur using c++ course technology
Materi Struktur Data ppt pertemuan ke (VIII)
Post a Comment