Binary Search with Example and Java Program

By
Advertisement
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