Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

This is returning -1. But it should be returning the number. I am not sure why its doing this can anyone help debug public class

This is returning -1. But it should be returning the number. I am not sure why its doing this can anyone help debug

public class BinarySearch{

public static void main(String args[]) {

int [] list = new int [] {1,3,6,10,15,19, 31, 34};

int target = 15;

System.out.println(binarySearch(list,target));

}

public static int binarySearch(int [] array, int target) {

int first = 0;

int last = array.length - 1;

int middle = 0;

while(last <= first) {

middle = last + (first - last)/2;

if(array[middle] == target) {

return array[middle];

}

if(target < array[middle]) {

last = middle - 1;

}

else {

first = middle + 1;

}

}

return -1;

}

}

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Database Concepts

Authors: David M Kroenke, David J Auer

6th Edition

0132742926, 978-0132742924

More Books

Students also viewed these Databases questions