题目来源牛客网
描述
给定一个整数数组nums,按升序排序,数组中的元素各不相同。
nums数组在传递给search函数之前,会在预先未知的某个下标 t(0 <= t <= nums.length-1)上进行旋转,让数组变为[nums[t], nums[t+1], ..., nums[nums.length-1], nums[0], nums[1], ..., nums[t-1]]。
比如,数组[0,2,4,6,8,10]在下标3处旋转之后变为[6,8,10,0,2,4]
现在给定一个旋转后的数组nums和一个整数target,请你查找这个数组是不是存在这个target,如果存在,那么返回它的下标,如果不存在,返回-1
示例1
输入:[6,8,10,0,2,4],10
返回值:2
示例2
输入:[6,8,10,0,2,4],3
返回值:-1
示例3
输入:[2],1
返回值:-1
备注:
1 <= nums.length <= 4000
解题思路:
讲实话这个题目没看太懂他旋转的意义是啥?看下来就是在一个数组中寻找目标值是否存在,如果存在就返回下标,如果不存在就返回-1,这跟旋转不旋转没关系
class Solution:
def search(self , nums , target ):
# write code here
if target not in nums: return -1
return nums.index(target)