Computer Science, asked by drishtipandey05, 1 month ago

Write a program to initialize an array of 10 numeric elements sorted in ascending order. Accept a value from the user and using binary search method print out the cell position the number occupies in the array.

Answers

Answered by subha2007293
1

Answer:

This program uses binary search algorithm to search an element in given list of elements.

/* Program: Binary Search Example

* Written by: Chaitanya from beginnersbook.com

* Input: Number of elements, element's values, value to be searched

* Output:Position of the number input by user among other numbers*/

import java.util.Scanner;

class BinarySearchExample

{

public static void main(String args[])

{

int counter, num, item, array[], first, last, middle;

//To capture user input

Scanner input = new Scanner(System.in);

System.out.println("Enter number of elements:");

num = input.nextInt();

//Creating array to store the all the numbers

array = new int[num];

System.out.println("Enter " + num + " integers");

//Loop to store each numbers in array

for (counter = 0; counter < num; counter++)

array[counter] = input.nextInt();

System.out.println("Enter the search value:");

item = input.nextInt();

first = 0;

last = num - 1;

middle = (first + last)/2;

while( first <= last )

{

if ( array[middle] < item )

first = middle + 1;

else if ( array[middle] == item )

{

System.out.println(item + " found at location " + (middle + 1) + ".");

break;

}

else

{

last = middle - 1;

}

middle = (first + last)/2;

}

if ( first > last )

System.out.println(item + " is not found.\n");

}

}

Output 1:

Similar questions