### Algorithm Design & Analysis

Product of 2 matrices - Divide and Conquer Kurskal\'s algo to solve Minimum Cost Spanning Tree

### Divide and Conquer Strategy

Towers of Hanoi Problem using Recursive Algorithm Prim\'s algo solve Minimum Spanning Tree - Graphic

### Cubic Time Algorithms

Bubble Sort Algorithm n_th term of fibonacci series - Toplogical Order

### Logrithmic Time Algorithms

Compute, display factorial using recursive algo Product of 2 matrices - Strassen\'s Algorithm Kurskal\'s algo - min cost spanning tree - graphics

### Dynamic Programming Technique

n_th term of fibonacci series - Divide and Conquer Prim\'s algo - min Spanning Tree - Mouse support

### Exponential Time Algorithms

Multiply two matrices Prim\'s algo to solve Minimum Spanning Tree Problem

Binary search algorithm

### Linear Time Algorithms

n_th term of fibonacci series Kurskal\'s - min cost spanning tree - mouse support

# Program to implement the Binary search Algorithm

``` # include <iostream.h>
# include    <conio.h>

int binary_search(int [],int,int);

main( )
{
clrscr( );

const int array_size=10;
int array[array_size]={0,6,9,12,20,23,29,32,47,79};

cout<<\" ******************************************************************************\"<<endl;
cout<<\" *******************************  Binary Search  ******************************\"<<endl;
cout<<\" ******************************************************************************\"<<endl;

gotoxy(1,24);
cout<<\" ******************************************************************************\"<<endl;
cout<<\" ******************************************************************************\";

gotoxy(1,5);
cout<<\"\\n The contents of the array are : \"<<endl;

cout<<\"\\n     Elements :\"<<\"\\t\\t     Value:\"<<endl;

for(int count=0;count<array_size;count++)
{
cout<<\"\\t\"<<\" array [\"<<count<<\"]\"<<\"\\t\\t\";
cout<<array[count]<<endl;
}

int searching_element=0;
int flag=0;

cout<<\"\\n Enter the element you want to find  =  \";
cin>>searching_element;

flag=binary_search(array,array_size,searching_element);

if(flag!=-1)
cout<<\"\\n The given element is found at the position  array[\"<<flag<<\"].\";

else

getch( );
return 0;
}

//--------------------------  binary_search( )  -------------------------//

int binary_search(int array[],int array_size,int element)
{
int start=0;
int end=array_size-1;
int middle;
int position=-1;

middle=(start+end)/2;

do
{
if(element<array[middle])
end=middle-1;

else if(element>array[middle])
start=middle+1;

middle=(start+end)/2;
}
while(start<=end && array[middle]!=element);

if(array[middle]==element)
position=middle;

return position;
}
```

Didn't find what you were looking for? Find more on Program to implement the Binary search Algorithm