Searching.

 Binary search

{It looks for particular element by comparing the middle most element of the collection }

Program 

#include <stdio.h>
int main()
{
    int i,j,n,key,h,l,m,arr[100];
    printf("enter size:");
    scanf("%d",&n);
    printf("\nenter element to be searched :");
    scanf("%d",&key);
    for(i=0; i<n; i++)
    {
        printf("enter elements %d: ",i+1);
        scanf("%d",&arr[i]);
    }
    l=0;
    h=n-1;
    m=l+h/2;
    while(arr[m]!=key&&l<=h)
    {
        if(arr[m]<key)
            l=m+1;
        else
            h=m-1;
    }
    m=l+h/2;
    if(arr[m]==key)
        printf("location found %d",m+1);
    else
        printf("location not found ");
    return 0;
}

OUTPUT:

enter size:7

enter element to be searched :5

enter elements 1: 9

enter elements 2: 8

enter elements 3: 6

enter elements 4: 5

enter elements 5: 4

enter elements 6: 3

enter elements 7: 2

location found 4

/////////////////////////////

Comments