码迷,mamicode.com
首页 > 其他好文 > 详细

二分查找_14

时间:2016-02-25 00:18:05      阅读:157      评论:0      收藏:0      [点我收藏+]

标签:

public int binarySearch(int[] nums, int target) {
        
        int l = 0;
        int r = nums.length-1;
        while(l<=r)
        {
            int mid = (l+r)/2;
            if(nums[mid]==target)
                return mid;
            if(nums[mid]<target)
                l = mid+1;
            else
                r = mid-1;
        }
        return l;
    }

给定一个排序的整数数组(升序)和一个要查找的整数target,用O(logn)的时间查找到target第一次出现的下标(从0开始),如果target不存在于数组中,返回-1

样例

在数组 [1, 2, 3, 3, 4, 5, 10] 中二分查找3,返回2

挑战

如果数组中的整数个数超过了2^32,你的算法是否会出错?

二分查找_14

标签:

原文地址:http://www.cnblogs.com/zilanghuo/p/5215407.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!