LeetCode Search in Rotated Sorted Array II
来源:互联网 发布:网络电视央视直播 编辑:程序博客网 时间:2024/06/05 20:10
LeetCode解题之Search in Rotated Sorted Array II
原题
把一个不降序的数组进行旋转,如[0,1,1,1,2,3,4,5]旋转3位成为[3,4,5,0,1,1,1,2]。在这样的数组中判断目标数字是否存在。
注意点:
- 不知道数组旋转了多少位
例子:
输入: nums = [4, 5, 5, 6, 7, 0, 1, 2], target = 4
输出: True
解题思路
当时写 Search in Rotated Sorted Array 的时候已经考虑到数字重复的问题了,所以直接把原来的代码修改一下,返回下标改为返回布尔值。
AC源码
class Solution(object): def search(self, nums, target): """ :type nums: List[int] :type target: int :rtype: int """ left = 0 right = len(nums) - 1 while left <= right: mid = left + (right - left) // 2 if nums[mid] == target: return True if nums[mid] > target: if nums[left] <= target or nums[mid] < nums[left]: right = mid - 1 else: left = mid + 1 else: if nums[left] > target or nums[mid] >= nums[left]: left = mid + 1 else: right = mid - 1 return Falseif __name__ == "__main__": assert Solution().search([4, 5, 5, 6, 7, 0, 1, 2], 4) == True assert Solution().search([4, 5, 6, 7, 7, 7, 7, 7, 0, 1, 2], 7) == True
欢迎查看我的Github (https://github.com/gavinfish/LeetCode-Python) 来获得相关源码。
0 0
- LeetCode: Search in Rotated Sorted Array II
- LeetCode Search in Rotated Sorted Array II
- LeetCode : Search in Rotated Sorted Array II
- [LeetCode] Search in Rotated Sorted Array II
- [Leetcode] Search in Rotated Sorted Array II
- [leetcode] Search in Rotated Sorted Array II
- [LeetCode]Search in Rotated Sorted Array II
- [leetcode] Search in Rotated Sorted Array II
- LeetCode-Search in Rotated Sorted Array II
- LeetCode - Search in Rotated Sorted Array II
- 【Leetcode】Search in Rotated Sorted Array II
- Leetcode: Search in Rotated Sorted Array II
- 【leetcode】Search in Rotated Sorted Array II
- leetcode Search in Rotated Sorted Array II
- Leetcode: Search in Rotated Sorted Array II
- [LeetCode] Search in Rotated Sorted Array II
- LeetCode | Search in Rotated Sorted Array II
- LeetCode Search in Rotated Sorted Array II
- hdu4828Grids
- leetcode49. Group Anagrams
- KMP
- 韩顺平 javascript教学视频_学习笔记2_js运行原理_js开发工具介绍_js程序(hello)_js基本语法
- ImageView 相关
- LeetCode Search in Rotated Sorted Array II
- Java基础之----I/O
- uboot relocation section .rel.dyn
- Log4j2 与 SpringMVC 整合
- Service 中onStartCommand方法参数的含义
- Objective C类方法load和initialize的区别
- iOS支付宝
- Ajax学习笔记
- android - ListView优化机制及滑动时数据时出现的数据错乱重复问题