Search in Rotated Sorted Array
来源:互联网 发布:淘宝越墙vans是正品吗 编辑:程序博客网 时间:2024/06/03 22:29
Suppose a sorted array is rotated at some pivot unknown to you beforehand.
(i.e., 0 1 2 4 5 6 7
might become 4 5 6 7 0 1 2
).
You are given a target value to search. If found in the array return its index, otherwise return -1.
You may assume no duplicate exists in the array.
思路:典型的排序查找,但需要先确定两个排序搜索的范围。但是这样时间复杂度就会为O(2N), 所以应该有能简单的方法。
class Solution {public: int search(int A[], int n, int target) { if (A == NULL) { return NULL; } int left = 0; int right = n - 1; int mid; while (left <= right) { mid = left + (right - left) / 2; if (target == A[mid]) { return mid; } else if (A[mid] >= A[left]) { //对于只有两个元素的 // left side is sorted if (target < A[mid] && target >= A[left]) { //=号 right = mid - 1; } else { left = mid + 1; } } else if (A[mid] < A[right]) { // right side is sorted if (target > A[mid] && target <= A[right]) { //=号 left = mid + 1; } else { right = mid - 1; } } } return -1; }};
0 0
- Search in Rotated Sorted Array
- Search in Rotated Sorted Array
- Search in Rotated Sorted Array
- Search in Rotated Sorted Array
- Search in Rotated Sorted Array
- Search in Rotated Sorted Array
- Search in Rotated Sorted Array
- Search in Rotated Sorted Array
- Search in Rotated Sorted Array
- Search in Rotated Sorted Array
- Search in Rotated Sorted Array
- Search in Rotated Sorted Array
- Search in Rotated Sorted Array
- Search in Rotated Sorted Array
- Search in Rotated Sorted Array
- Search in Rotated Sorted Array
- Search in Rotated Sorted Array
- Search in Rotated Sorted Array
- 举办活动(最多)
- mysql替换回车、换行符
- 用nmake来编译,问环境变量怎么设置
- HDU 2203 KMP
- [SqlServer02]-数据库优化及管理常用命令
- Search in Rotated Sorted Array
- 输出1-100之间符合如下条件的数:该数的各位数之乘积大于各位数之和(循环嵌套)
- 11/09/2014 筛选特征新想法
- oracle提交了之后就不能回滚么?
- 稳定排序和不稳定排序(转载)
- Best Time To Buy And Sell Stock
- Billboard - HDU 2795 线段树
- 【C语言基础】C语言第七章
- 集线器,交换机,路由器。。