Binary Search
Binary Search
: BinarySearch.cpp
// Author
: APOORVA MAHESHWARI
// Version
:
// Copyright
: Your copyright notice
// Description : Hello World in C++, Ansi-style
//======//===============================================
=============================
#include<iostream>
using namespace std;
class BinarySearch
{
int data[10];
int n, key;
public:
void getdata();
int search();
};
void BinarySearch::getdata()
{
int i;
cout<<"enter no. of elements n";
cin>>n;
cout<<"enter elements";
for (i=0;i<n;i++)
{
cin>>data[i];
}cout<<"enter key";
cin>>key;
}
int BinarySearch::search()
{
int imin,imax,imid,index=0;
imin=0;
imax=n-1;
while(imin<=imax)
{
imid=(imax+imin)/2;
if(key==data[imid])
{index = imid+1;
break;
}
else if(key<imid)
imax=imid-1;
else
imin=imid+1;
}
return index;
}
int main()
{
int index;
BinarySearch b;
b.getdata();
index=b.search();
if(index!=0)
cout<<"key is present at position"<<index;
else
cout<<"not found";
}
Output:
1.
enter no. of elements n5
enter elements1 2 3 4 5
enter key3
key is present at position3
2.
enter no. of elements n 5
enter elements21 22 34 56 78
enter key56
key is present at position4
3.
enter no. of elements n4
enter elements31 33 35 37
enter key37
key is present at position4