Search in Rotated Sorted Array
medium 原题链接:https://leetcode.com/problems/search-in-rotated-sorted-array/
Search in Rotated Sorted Array
原题链接:https://leetcode.com/problems/search-in-rotated-sorted-array/
描述
You are given an integer array
numssorted in ascending order, and an integertarget.Suppose that
numsis 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]).If
targetis found in the array return its index, otherwise, return-1.
例子
Input: nums = [4,5,6,7,0,1,2], target = 0
Output: 4
Input: nums = [4,5,6,7,0,1,2], target = 3
Output: -1
Input: nums = [1], target = 0
Output: -1
约束
1 <= nums.length <= 5000
-10^4 <= nums[i] <= 10^4All values of
numsare unique.
numsis guranteed to be rotated at some pivot.
-10^4 <= target <= 10^4
解法一
无脑遍历数组查找target,用res记录下标并返回。
分析:T=O(n), S=O(1)
解法二
使用二分查找
分析:T=O(log2 n),S=O(1)
总结
从节省时间,降低时间复杂度的角度考虑,优先采用二分查找法。
最后更新于
这有帮助吗?