二分查找

二分查找

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

图片说明

//数组增序减序无所谓
class BinarySearch {
public:
    int getPos(vector<int> A, int n, int val) {
        if(n<=0) return -1;
        int left = 0,right = n-1;
        while(left<=right)
        {
            int mid = (left+right)/2;
            if(val == A[mid])
            {
                int i = mid-1;
                for(;i>=0&&val == A[i];i--);

                return i+1;
            }
            else if(val>A[mid]) 
                left = mid+1;
            else
                right = mid -1;
        }
        return -1;
    }
};
全部评论

相关推荐

活泼的代码渣渣在泡池...:哈哈哈挺好的,我也上岸美团了,不说了,我又接了一单
点赞 评论 收藏
分享
11-03 12:40
中山大学 Java
勇敢的突尼斯海怪选钝...:楼主这拒意向话术好得体呀 !求问HR回复态度咋样呀
点赞 评论 收藏
分享
评论
4
收藏
分享

创作者周榜

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