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.
这不就直接搜就好了么。。。真的不懂啊。。。是我太年轻了么……
于是我都没打开eclipse,直接在leetcode上面敲了如下代码……
public class Solution {
public int search(int[] A, int target) {
for(int i=0;i<A.length;i++){
if(A[i]==target) return i;
}
return -1;
}
}
敲完我觉得这里一定有什么玄机。。。我一定是读题哪里没读对。。。错了看看答案再理解一下题意吧……或者它想问rotate前的index该是多少?
结果尼玛Accept了。。。
也是个好事儿吧……
抱着一种release的心情,我兢兢战战地打开了Search in Rotated Sorted Array II……
感觉会是那种“叫你丫尝过了甜头该干你了!”的感觉……
结果我发现题干……
Follow up for "Search in Rotated Sorted Array":
What if duplicates are allowed?
Would this affect the run-time complexity? How and why?
Write a function to determine if a given target is in the array.
尼玛请问和第一次的问题除了这回返回的是boolean型有什么区别么。。。我关心你重复不重复啊。。。用了不到十秒:
public class Solution {
public boolean search(int[] A, int target) {
for(int i=0;i<A.length;i++){
if(A[i]==target) return true;
}
return false;
}
}
坑爹啊!!!!!!
Accept!!!
我打字时间还没judging的时间长呢!
愉快的一天…………