java 二分查找法

// 3,二分查找法
        
        //1),计算出数组的中间位置;(数组的开始位置索引+结束位置的索引)/2
        //2),去除中间位置的值和要查找的数字比较,根据比较结果决定下一步查找的部分,
        //3),再继续下一部分数组的中间数,(数组的开始位置索引+结束位置的索引)/2
        //4),再进行比较,

        
        
        //要查找的值;
        int a =10;
        //找到值得位置
        int w=-1;//-1表示没有找到
        
        // 开始索引
        int start=0;
        //结束索引
        int end =array.length-1;
        while(start<=end)//循环条件
        {
        //中间索引
        int m=(start+end)/2;
        
        
        if(a==array[m])
        {
            w=m;//找到了
            break;
        }
        else if(a>array[m])
        {
            start=m+1;
        }
        else
        {
            end=m-1;
        }
        }
        
        
        System.out.println("找到的位置是"+w);

 

posted @ 2016-05-13 11:52  ╄承诺、带给的伤痛—  阅读(138)  评论(0编辑  收藏  举报