下面是折半查找的实现,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) return m; //3 else if(data[m] > v) y = m; //4 else x = m; //5 } return -1; //6 }