49.在转动的有序数组中寻找目标值
题目描述
给出一个转动过的有序数组,你事先不知道该数组转动了多少
(例如,0 1 2 4 5 6 7可能变为4 5 6 7 0 1 2).
在数组中搜索给出的目标值,如果能在数组中找到,返回它的索引,否则返回-1。
假设数组中不存在重复项。
输入
[3,2,1],1
返回值
2
分析
1.无论该数组转动多少次,我们都可以通过遍历来获取得到他的下标值
2.将目标值与遍历的数组中的元素值比较即可,如果相等就返回该元素是下标,如果遍历完成后,还是没有找到与目标值相等的,那么就返回-1;
代码实现
import java.util.*;
public class Solution {
/**
*
* @param A int整型一维数组
* @param target int整型
* @return int整型
*/
public int search (int[] A, int target) {
for(int i=0;i<A.length;i++) {
if(target==A[i]) {
return i;
}
}
return -1;
}
}