首页 > 试题广场 >

下面是折半查找的实现,data是按升序排列的数据,x是查找下

[不定项选择题]

下面是折半查找的实现,data是按升序排列的数据,x是查找下标,y是查找上标,v是查找的数值,返回v在data的索引,若没找到返回-1。代码不正确的是
public int bsearch(int [] data, int x, int y, int v){
        int m;
        while(x<y){  //1
        m = x + (y - x)/2;   //2
        if(data[m] > v)  y = m;   //3
}
        return -1;    //4
}

  • 1
  • 2
  • 3
  • 4
这根本没法折半啊,这不是哪行错了的问题吧,这逻辑都不全
发表于 2021-08-20 10:00:28 回复(0)