Anda di halaman 1dari 4

NIM : 1711522015 Tanggal : Senin, 2 April 2018

Nama : Vicky Ariga Elsayrafl Asisten :


Mata Kuliah : Praktikum Struktur Data 1. Tenti Atika Putri
Modul :8 2. Vedo Alfarizi
Kelas : 02

Resume *Searching

A. Ringkasan materi
Pengertian Searching
Searching adalah mencari data yang dibutuhkan. Searching dalam
pemrograman bisa dilakukan untuk mencari data yang ada di dalam
memory komputer.Dalam kehidupan sehari-hari kita juga sering
melakukan kegiatan searching seperti mencari data/informasi yang ada
dalam internet. Ada beberapa metode yang dapat digunakan untuk
searching, ada yang dinamakan:
 Sequential Search
 Binary Search

Sequential Search
Sequential Search merupakan metode pencarian data dalam array
dengan cara membandingkan data yang dicari dengan data yang ada
di dalam array secara berurutan. Pencarian data dengan Metode
Sequential Search efektif untuk mencari data yang dalam posisi yang
tidak terurut atau acak.
Sequential Searching memiliki Kelebihan dan Kekurangan yaitu:
Kelebihan Sequential Searching bisa dikatakan lebih mudah dalam
implementasinya dalam pemrograman.
Kekurangannya jika data yang terdapat dalam suatu array itu sangat
banyak, maka akan diperlukan waktu yang lebih lama untuk
membandingkan data yang dicari dengan jumlah data yang sangat
banyak dalam suatu array.

Praktikum Struktur Data & Algoritma


Binary Search
Metode pencarian Binary yaitu mencari data dengan melakukan
mengelompokkan array menjadi bagian-bagian. Binary Search ini
hanya dapat diimplementasikan pada data yang telah terurut baik
ascending maupun descending dalam suatu array.
Kelebihan dan Kekurangan Binary Search:
Kelebihannya yaitu tidak perlu membandingkan data yang dicari
dengan seluruh data array yang ada, cukup melalui titik tengah
kemudian kita bisa menentukan ke mana selanjutnya mencari data
yang ingin dicari.
Kekurangan implementasi agak sedikit lebih rumit karena tidak bisa
digunakan pada data array yang masih acak. Jadi harus melakukan
sorting terlebih dahulu dalam implementasinya.
B. Contoh program
#include <cstdlib>
#include <iostream>
using namespace std;

int n, data[100], kiri, kanan, tengah, a, b;


bool ketemu = false;

int main(int argc, char *argv[])


{
cout<<"jumlah data yang akan diinputkan : ";cin>>n;
cout<<endl;
for(int i=0;i<n;i++)
{
cout<<"angka ke-"<<i<<":";
cin>>data[i];
}

Praktikum Struktur Data & Algoritma


for(int i=0;i<n;i++)
{
for(int j=0;j<n-i-1;j++)
{
if(data[j]>data [j+1])
{
a=data[j];
data[j]=data[j+1];
data[j+1]=a;
}
}
}
cout<<endl;
cout<<"data yang telah diurutkn adalah :";
for(int i=0;i<n;i++)
{
cout<<data[i]<<" ";
}
cout<<endl;
cout<<"masukan angka yang dicari :";
cin>>b;
kiri=0;
kanan= n-1;
while(kiri<=kanan)
{
tengah=(kiri+kanan)/2;
if(b == data[tengah])
{
ketemu=true;
break;
}
else if (b<data[tengah])
Praktikum Struktur Data & Algoritma
{
kanan=tengah-1;
}
else
{
kiri = tengah +1;
}
}
if(ketemu == true)
{
cout<<"data ditemukan"<<endl;
cout<<"data berada pada indeks ke-"<<tengah<<endl;
}
else
{
cout<<"angka tdiak ditemukan!";
}
system("pause");
return 0;
}
C. Kesimpulan
Pencarian adalah proses menemukan data tertentu di dalam sekumpulan
data yang bertipe sama (tipe dasar atau tipe bentukan).
Salah satu metode yang dapat kita gunakan adalah metode Pencarian
Beruntun (sequential search).
Metode pencarian beruntun (sequential search) adalah metode yang
paling sederhana dari sejumlah metode pencarian.
Secara singkat Metode pencarian beruntun (sequential search) dapat
dijelaskan sebagai berikut :
Dari elemen-elemen yang di ketahui, data yang dicari di bandingkan satu
persatu sampai data tersebut ditemukan atau tidak di temukan.

Praktikum Struktur Data & Algoritma

Anda mungkin juga menyukai