二分查找

血红的双手。 提交于 2019-11-27 16:57:27
    /**
     * 二分查找
     * @param num 搜索字符
     * @param s1  搜索源
     * @param start 开始位置
     * @param end 结束位置
     * @return true or false
     */
    public static boolean find(int num, int[] s1,int start,int end) {


       
        if(start >end){
            return false;
        }
        int rg = start+(end-start)/2;
        if(num<s1[rg]){
           return find(78, s1,start,rg-1);

        } else if(num>s1[rg]){
           return find(78, s1,rg+1,end);

        }else {
           return true;
        }

    }


    public static void main(String[] args) {


        int[] s1 = {1, 2, 35, 6, 78, 458, 246,5};
        System.out.println(find(8, s1,0,8));

    }

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!