Ich versuche, eine Dezimalzahl in ein Array zu setzen und suchen Sie mit einer binären Suche und es funktioniert nicht, wie ich es will. Das ist mein Code. Ich muss die Nummer 45.3 verwenden und ich weiß nicht, was ich falsch mache, bitte helfen Sie mir.Hausaufgaben auf binäre Suche Problem
class Project3
{
public static void main(String[] args)
{
double[] data= new double[6];
data[0]=-3;
data[1]=10;
data[2]=5;
data[3]=24;
data[4]=45.3;
data[5]=10.5;
binarySearch(data[4]);
}
public boolean binarySearch(int key)
{
int size=6;
int low=0;
int high=size-1;
while(high>=low)
{
int middle = (low + high)/2;
if(data[middle] == key)
{
return true;
}
if(data[middle] < key)
{
low=middle+1;
}
if(data[middle]>key)
{
high=middle-1;
}
}
return false;
}
}
binäre Suche funktioniert nur auf sortierten Arrays – rafid059
Sie einen int in der Methode übergeben. Warum? – ryekayo
Dezimalzahlen in Java? Es ist eine Referenz? Das ist nützlich für Sie: http://stackoverflow.com/help/how-to-ask –