JAVA实现二分法(方法好不好不重要,面试的时候最快能想出来的方法才是最好的)

魔术索引I

http://www.nowcoder.com/questionTerminal/f2976b694c5a4a6497b1d7886894fcdd

JAVA重现二分法查找。
重点在于find方法中索引的添加以及更新的方法

import java.util.*;

public class MagicIndex {
    public boolean findMagicIndex(int[] A, int n) {
        // write code here
        return find(A,0);
    }

    public boolean find(int[] a,int index){
        if(a.length == 0) return false;
        int len = a.length / 2;
        if(a[len] == len + index) return true;
        boolean x = find(Arrays.copyOfRange(a,0,len),0);
        boolean y = find(Arrays.copyOfRange(a,len+1,a.length),index + len + 1);
        return x||y;
    }
}
全部评论

相关推荐

01-19 12:48
门头沟学院 C++
只想搞钱的鸽子很喜欢...:混账是很多的,还有那些在自己风华正茂的年纪说风凉话讥讽那些下岗前员工的。这些人都是现在职场环境这么烂的帮凶
点赞 评论 收藏
分享
评论
2
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务