Search for a Range -- leetcode
来源:互联网 发布:终端服务的端口号 编辑:程序博客网 时间:2024/06/01 10:48
Given a sorted array of integers, find the starting and ending position of a given target value.
Your algorithm's runtime complexity must be in the order of O(log n).
If the target is not found in the array, return [-1, -1]
.
For example,
Given [5, 7, 7, 8, 8, 10]
and target value 8,
return [3, 4]
.
https://oj.leetcode.com/problems/search-for-a-range/
class Solution {public: vector<int> searchRange(int A[], int n, int target) { int start = -1,end = -1,i; bool flag = false; for(i = 0 ;i < n; ++i) { if(A[i] == target && flag == false) { start = i; flag = true; }//找到了 则记录开始位置 并标记一下 else if(A[i] != target && flag) { end = i - 1; break; }//没找到 并且已经被标记过了 显然 end = i -1 else if(A[i] == target && flag) { end = i; }//找到了 并且也标记过了 说明这是连续出现的情况 if(i == n-1 && flag && end == -1) { end = start; }//找完了最后一个 并且标记了 并且end 还是初始值 注意这是单独的一个if 说明 最后一个才找到 } return vector<int> {start,end}; }};
如果用用二分查找 应该是O(logn)
也可以拿现成的stl 算法 lowerbound 和upperbound
0 0
- LeetCode: Search for a Range
- LeetCode Search for a Range
- [Leetcode] Search for a Range
- LeetCode : Search for a Range
- [LeetCode] Search for a Range
- [Leetcode] Search for a Range
- Leetcode Search for a Range
- [LeetCode]Search for a Range
- LeetCode-Search for a Range
- [leetcode] Search for a Range
- LeetCode - Search for a Range
- Search for a Range leetcode
- LeetCode | Search for a Range
- LeetCode - Search for a Range
- LeetCode: Search for a Range
- leetcode: Search for a Range
- 【leetcode】Search for a Range
- Leetcode: Search for a Range
- Eclipse+Maven构建web项目及部署时Maven lib依赖问题的解决
- IOS判断NSArray是否为空
- CSS Sprites技术
- Android_NetworkInfo以及判断手机是否联网
- Oracle 设定字符集
- Search for a Range -- leetcode
- ubuntu 14.4cor文件被截断解决方案
- Tomcat之默认日志
- 最好的pdf转换成ppt转换器
- DB2错误信息(按sqlcode排序)
- 子网掩码的计算
- 利用vSphere PowerCLI批量克隆部署虚拟机
- 在eclipse中使用run->run on server的时候,选择tomcat6会报错误:
- 如何用互联网技术和思维,优化传统商业的价值链,注入新的商业智慧