leetcode

简介: 在排序数组中查找元素的第一个和最后一个位置
classSolution {
public:
vector<int>searchRange(vector<int>&nums, inttarget) {
if(nums.empty()) return {-1,-1};
intl=0, r=nums.size() -1; //二分范围while( l<r)                   //查找元素的开始位置        {
intmid= (l+r )/2;
if(nums[mid] >=target) r=mid;
elsel=mid+1;
        }
if( nums[r] !=target) return {-1,-1};  //查找失败intL=r;
l=0, r=nums.size() -1;     //二分范围while( l<r)                   //查找元素的结束位置        {
intmid= (l+r+1)/2;
if(nums[mid] <=target ) l=mid;
elser=mid-1;
        }
return {L,r};
    }
};
相关文章
|
6月前
leetcode-472. 连接词
leetcode-472. 连接词
48 0
|
27天前
【LeetCode 02】暴力法总结
【LeetCode 02】暴力法总结
14 1
|
6月前
|
Java
leetcode-474:一和零
leetcode-474:一和零
39 0
|
6月前
|
消息中间件 Kubernetes NoSQL
LeetCode 3、28、1351
LeetCode 3、28、1351
leetcode 827 最大人工岛
leetcode 827 最大人工岛
59 0
leetcode 827 最大人工岛
|
索引
|
算法 Python
LeetCode 386. Lexicographical Numbers
给定一个整数 n, 返回从 1 到 n 的字典顺序。
82 0
LeetCode 386. Lexicographical Numbers
LeetCode 354. Russian Doll Envelopes
给定一些标记了宽度和高度的信封,宽度和高度以整数对形式 (w, h) 出现。当另一个信封的宽度和高度都比这个信封大的时候,这个信封就可以放进另一个信封里,如同俄罗斯套娃一样。 请计算最多能有多少个信封能组成一组“俄罗斯套娃”信封(即可以把一个信封放到另一个信封里面)。
80 0
LeetCode 354. Russian Doll Envelopes
|
存储 算法
leetcode第49题
时间复杂度:两层 for 循环,再加上比较字符串,如果字符串最长为 K,总的时间复杂度就是 O(n²K)。 空间复杂度:O(NK),用来存储结果。 解法一算是比较通用的解法,不管字符串里边是大写字母,小写字母,数字,都可以用这个算法解决。这道题的话,题目告诉我们字符串中只有小写字母,针对这个限制,我们可以再用一些针对性强的算法。 下边的算法本质是,我们只要把一类的字符串用某一种方法唯一的映射到同一个位置就可以。
152 0
leetcode第49题