开发者社区> 问答> 正文

数组查找算法之二分法查找

已解决

给定一组数组{1,2,3,4,5,6,7,8,9},输入目标6所在下标

展开
收起
苍霞学子 2020-03-30 20:50:10 1108 0
1 条回答
写回答
取消 提交回答
  • 下一站是幸福
    采纳回答
    * @date 2020/3/26 - 21:21
     */
    public class Thurd {
        public static void main(String[] args) {
            //给定一组数组{1,2,3,4,5,6,7,8,9},输入目标6所在下标
            int[] arr={1,2,3,4,5,6,7,8,9};
            //目标
            int target = 6;
            //指针
            int index = -1;
            //首
            int begin = 0;
            //尾
            int end = arr.length-1;
            //中间
            int mid = (begin+end)/2;
    
            while (true){
                if (arr[mid]==target)
                {
                    index=mid;
                    System.out.println(index);
                    break;
                }else{
                    if (arr[mid]>target)
                    {
                        end=mid-1;
                    }else
                    {
                        begin=mid+1;
                    }
                }
                mid=(begin+end)/2;
            }
        }
    }
    
    
    2020-03-30 21:21:14
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
数据+算法定义新世界 立即下载
袋鼠云基于实时计算的反黄牛算法 立即下载
Alink:基于Apache Flink的算法平台 立即下载