//Program for Binary and Linear search with function.
#include<iostream.h>
#include<conio.h>
int linear(int arr[],int value,int low,int high,int found);
int binary(int arr[],int value,int low,int high,int found,int mid);
void main()
{
int arr[10],no,i,j,res=0,res1;
clrscr();
cout<<"Enter 10 values: \n";
for(i=0;i<10;i++)
cin>>arr[i];
cout<<"Enter value to find: ";
cin>>no;
res=linear(arr,no,0,9,0);
res1=binary(arr,no,0,9,0,0);
if(res>0)
cout<<"Value found by linear search\n";
else
cout<<"Value not found by linear search\n";
if(res1>0)
cout<<"Value found by binary search\n";
else
cout<<"Value not found by binary search\n";
getch();
}
int linear(int arr[],int value,int low,int high,int found)
{
while(!found && low<=high)
{
if(arr[low]==value)
return 1;
else
low++;
}
return 0;
}
int binary(int arr[],int value,int low,int high,int found,int mid)
{
while(!found && low<=high)
{
mid=(low+high)/2;
if(arr[mid]==value)
return 1;
else
if(arr[mid]<value)
low=mid+1;
else
high=mid-1;
}
return 0;
}
#include<iostream.h>
#include<conio.h>
int linear(int arr[],int value,int low,int high,int found);
int binary(int arr[],int value,int low,int high,int found,int mid);
void main()
{
int arr[10],no,i,j,res=0,res1;
clrscr();
cout<<"Enter 10 values: \n";
for(i=0;i<10;i++)
cin>>arr[i];
cout<<"Enter value to find: ";
cin>>no;
res=linear(arr,no,0,9,0);
res1=binary(arr,no,0,9,0,0);
if(res>0)
cout<<"Value found by linear search\n";
else
cout<<"Value not found by linear search\n";
if(res1>0)
cout<<"Value found by binary search\n";
else
cout<<"Value not found by binary search\n";
getch();
}
int linear(int arr[],int value,int low,int high,int found)
{
while(!found && low<=high)
{
if(arr[low]==value)
return 1;
else
low++;
}
return 0;
}
int binary(int arr[],int value,int low,int high,int found,int mid)
{
while(!found && low<=high)
{
mid=(low+high)/2;
if(arr[mid]==value)
return 1;
else
if(arr[mid]<value)
low=mid+1;
else
high=mid-1;
}
return 0;
}
No comments:
Post a Comment