Sunday, 28 October 2018

Binary Search with Example and Java Program

Binary search is applied on the sorted array or list. In binary search, we first compare the value with the element in the middle position of the array. If the value is matched, then we return the value. If the value is less than the middle element, then it must lies in the lower half of the array and it it's greater than the element then it must lie in the upper half of the array.

We repeat this procedure on the lower or upper half of the array. Binary search is useful when there are large number of elements in an array.

Binary Search Example



 Binary Search Java Program

    import java.util.Scanner;
    
    class BinarySearch
    {
      public static void main(String args[])
      {
        int c, first, last, middle, n, search, array[];
    
        Scanner in = new Scanner(System.in);
        System.out.println("Enter number of elements");
        n = in.nextInt();
        array = new int[n];
    
        System.out.println("Enter " + n + " integers");
    
    
        for (c = 0; c < n; c++)
          array[c] = in.nextInt();
    
        System.out.println("Enter value to find");
        search = in.nextInt();
    
        first  = 0;
        last   = n - 1;
        middle = (first + last)/2;
    
        while( first <= last )
        {
          if ( array[middle] < search )
            first = middle + 1;   
          else if ( array[middle] == search )
          {
            System.out.println(search + " found at location " + (middle + 1) + ".");
            break;
          }
          else
             last = middle - 1;
    
          middle = (first + last)/2;
       }
       if (first > last)
          System.out.println(search + " isn't present in the list.\n");
      }
    }

Image Source: http://btechsmartclass.com
Program source: www.programmingsimplified.com

0 comments:

Post a Comment

Note: only a member of this blog may post a comment.

Find Us On Facebook

python tutorial

More

C Programming

More

Java Tutorial

More

Data Structures

More

MS Office

More

Database Management

More
Top