题解 | #在升序数组中查找元素的位置#

在升序数组中查找元素的位置

https://www.nowcoder.com/practice/f2628d9f7b7d4568aebaae6556aacfe0

class Solution {
public:
	vector<int> searchRange(vector<int>& nums, int target) {
		int a = 0, b = 0;
		int l = 0, r = nums.size() - 1;
        if(nums.size()==0)return {-1,-1};
		while (l < r) {
			int m = (l + r) >> 1;
			if (nums[m] >= target)
				r = m;
			else 
				l = m + 1;
		}
		if (nums[l] != target) {
			return { -1,-1 };
		}
		else {
			a = l;
			int l = 0, r = nums.size() - 1;
			while (l < r) {
				int m = (l + r + 1) >> 1;
				if (nums[m] <= target)l = m;
				else r = m - 1;				
			}
            b = l;
           return { a,b };
		}
		
	}
};

全部评论

相关推荐

秋招投简历提醒助手:个人经验是,一般面二十场左右就会进入侃侃而谈阶段。我今年七月末的时候开始的第一次面试,都是很多不会,回复很慢。后面慢慢迭代,到九月中的时候基本上面啥说啥,很放松的状态
远程面试的尴尬瞬间
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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