题解 | #二分查找#

二分查找

http://www.nowcoder.com/practice/28d5a9b7fc0b4a078c9a6d59830fb9b9

import java.util.*;
public class BinarySearch {
    public int getPos(int[] A, int n, int val) {
        // write code here
        int left = 0, right = n - 1;
        boolean exist = false;
        while(left <= right){
            int mid = (left + right) / 2;
            if(A[mid] == val) exist = true;
            if(A[mid] >= val){
                right = mid - 1;
            }else{
                left = mid + 1;
            }
        }
        if(exist == false) return -1;
        else return right + 1;
    }
}
全部评论

相关推荐

11-28 13:56
已编辑
吉林建筑大学
所有好工作吻上来:最近可能压力比较大吧,面试的时候已经不屑于去说一些违心的话了,今天这场面试我真是没控制住啊,感觉我已经要发火了
实习学到最有价值的工作习...
点赞 评论 收藏
分享
11-04 19:05
已编辑
东莞城市学院 单片机
不知道怎么取名字_:你这个要实习两年?哪有这么久的,感觉就是即使你毕业了,但还按实习的话,是不是不用给你缴社保公积金啥的
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

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