搜索旋转排序数组 II
题目
跟进“搜索旋转排序数组”,假如有重复元素又将如何?
是否会影响运行时间复杂度?如何影响?
为何会影响?
写出一个函数判断给定的目标值是否出现在数组中。样例
给出[3,4,4,5,7,0,1,2]和target=4,返回 true
题解
如果考虑到最坏的情况,如[0,0,0,0,0,1],如果使用二分法也可以解决问题,不过写个for循环最坏也是O(n),那就用for循环解决好了。
public class Solution {
/**
* param A : an integer ratated sorted array and duplicates are allowed
* param target : an integer to be search
* return : a boolean
*/
public boolean search(int[] A, int target) {
for (int i = 0; i < A.length; i ++)
{
if (A[i] == target)
{
return true;
}
}
return false;
}
}
Last Update 2016.10.1