pada aray biner, berbeda dengan array linear yg terdapat pada judul blog sebelumnya. Yang mana, pada array biner ini, pada saat kita ingin mencari data, dia bakalan mengurutkan data itu dahulu, baru kita dapat mencari data yg kita mau terdapat pada indeks ke berapa.
langsung saja ke program nya ya.....
#include <iostream>
using namespace std;
int pencarianbiner(int arr[],int kunci,int low, int high){
bool ketemu;
int middle;
ketemu=false;
while(low<=high && !ketemu){
middle=(low+high)/2;
if(kunci == arr[middle]){
ketemu=true;
}
else if(kunci<arr[middle]){
high=middle-1;
}
else{
low=middle+1;
}
}
if(ketemu){
return middle;
}
else {
return -1;
}
}
void bubblesort(int l[], int n){
int k=n;
int temp;
for(k-1;k>=1;k--){
for(int i =0;i<=k-2;i++){
if (l[i]>l[i+1]){
temp=l[i];
l[i]=l[i+1];
l[i+1]=temp;
}
}
}
}
void tampilsebelum(int i[],int n){
cout<<"isi Array Sebelum diurutkan = ";
for(int a=0;a<n;a++){
cout<<i[a]<<", ";
}
cout<<endl;
}
void tampilsesudah(int i[],int n){
cout<<"isi Array Sesudah diurutkan = ";
for(int a=0;a<n;a++){
cout<<i[a]<<", ";
}
cout<<endl;
}
main(){
int arr[]={4,45,6,7},cari;
tampilsebelum(arr,4);
bubblesort(arr,4);
tampilsesudah(arr,4);
cout<<"Masukan Data yang ingin dicari = ";cin>>cari;
int indexawal=0;
int indexakhir=3;
int hasilpencarian;
hasilpencarian=pencarianbiner(arr,cari,indexawal,indexakhir);
if(hasilpencarian==-1){
cout<<"Angka Yang Anda Cari Tidak Ketemu"<<endl;
}
else {
cout<<"Angka yang anda cari ketemu di index ke = "<<hasilpencarian+1<<endl;
}
}
Langganan:
Posting Komentar (Atom)
Mencari Data
program c++ mencari data yg terdapat pada indeks ke-, dengan metode aray linear. #include<iostream> #include<conio.h> using na...
-
program c++ mencari data yg terdapat pada indeks ke-, dengan metode aray linear. #include<iostream> #include<conio.h> using na...
-
Kali ini kita akan mencoba merubah celcius ke farenheit atau pun reamur meggunakan C++. langsung saja kita lihat ke programnya. #include...
-
pada array linear kita dapat mencari data, tanpa data harus di urutkan dulu... contoh : kita mengisi data 1 pada indeks ke- 1, 4 pada inde...
Tidak ada komentar:
Posting Komentar