Search for a Range--查找某个数范围--二分查找
来源:互联网 发布:php get传递参数 编辑:程序博客网 时间:2024/05/22 13:30
问题:链接
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]
.
先二分查找,再前后搜索。
注意边界条件,如果搜索到头尾该怎么办。
代码:
class Solution {public: vector<int> searchRange(int A[], int n, int target) { int result,i; vector<int> re_list; result = b_search(A, n, target); if(result == -1) { re_list.push_back(result); re_list.push_back(result); } else { i = result; while(i >= 0) { if((i-1)<0 ||(A[i-1] != A[i])){ re_list.push_back(i);break;} else --i; }i = result; while(i <= n-1) { if((i+1)>=n || A[i+1] != A[i]) {re_list.push_back(i);break;} else ++i; } }return re_list; } int b_search(int A[], int n, int target) { int start,end,mid; start = 0; end = n-1; while(start <= end) { mid = start+(end-start)/2; if(A[mid] == target) { return mid; } if(A[mid] < target) { start = mid+1; } else { end = mid-1; } } return -1; }};
0 0
- Search for a Range--查找某个数范围--二分查找
- 二分查找有序数组中某个数的所在范围 Search for a Range
- Search for a Range 查找一个数所在的范围
- 【二分查找】Search for a Range
- leetcode:Search for a Range 二分查找
- leetcode 二分查找 Search for a Range
- leetcode-二分查找:Search for a range
- 二分查找:Search for a Range
- LeetCode-----34. Search for a Range(查找范围)
- leetcode 34. Search for a Range-数组边界|二分查找
- 34.leetcode Search for a Range(meidum)[二分查找]
- [leetcode-二分查找]--34. Search for a Range
- leetcode 34. Search for a Range 二分查找
- leetcode 34. Search for a Range (二分查找)
- [LeetCode] Search for a Range查找区间
- [leetcode] 【查找】 34. Search for a Range
- leetcode---search-for-a-range---查找
- leetCode_Search for a Range(二分查找)
- 人最重要的素质
- [转] HLT 与 LLT
- iOS绘制颜色渐变
- 判断文件夹是否存在,不存在则创建
- 设计模式:Inheritance(继承) 和 Delegation(委托)
- Search for a Range--查找某个数范围--二分查找
- ios发短信
- div style属性中设置其border无效
- Android多媒体开发【7】-- AwesomePlayer中TimedEventQueue-event事件调度器
- 数据结构——线性表(顺序结构和链式结构)
- UVa 10177 - (2/3/4)-D Sqr/Rects/Cubes/Boxes?
- linux下的so、o、lo、a、la文件的区别
- 向数据库中插入空值
- 使用jquery获取url以及jquery获取url参数的方法