This site requires JavaScript, please enable it in your browser!
Greenfoot back
JasonZhu
JasonZhu wrote ...

2014/3/26

Search returning 0

JasonZhu JasonZhu

2014/3/26

#
    public int binarySearch(int toFind)
    {
        int pos = -1;
        if(isSorted()){
            int upperBound = list.length-1;
            int lowerBound = 0;
            pos = (lowerBound + upperBound)/2;
            int num = list[pos];
            while((num!=toFind)&&(lowerBound<=upperBound)){
                if(num>toFind){
                    upperBound = pos-1;
                }else{
                    lowerBound = pos+1;
                }
                pos = (lowerBound + upperBound)/2;
            }
        }
        return pos;
    }
I have coded a binary search and I keep getting a result of 0. Can anyone pinpoint my problem? Thank you!
You need to login to post a reply.