摘要: 题目链接 154. 寻找旋转排序数组中的最小值 II 实现思路 在LeetCode 153. 寻找旋转排序数组中的最小值的思路上,进行重复元素、即nums[mid] == nums[right]的处理即可,我们在这种情况下只需要让right指针做一个偏移即可。 代码实现 class Solution 阅读全文
posted @ 2020-10-05 17:22 ZJPang 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 题目连接 153. 寻找旋转排序数组中的最小值 实现思路 因为数组被分成了两部分,我们每次拿到nums[mid]的值之后都应该和nums[right]进行比较 如果nums[mid] <= nums[right]的话,说明我们[mid, right]是有序的,那么我们nums[mid]有可能是最小值 阅读全文
posted @ 2020-10-05 17:19 ZJPang 阅读(103) 评论(0) 推荐(0) 编辑
摘要: 题目连接 81. 搜索旋转排序数组 II 题目思路 参考LeetCode 33的思想 代码实现 class Solution { public boolean search(int[] nums, int target) { int left = 0; int right = nums.length 阅读全文
posted @ 2020-10-05 17:14 ZJPang 阅读(81) 评论(0) 推荐(0) 编辑
摘要: 题目链接 33. 搜索旋转排序数组 题目思路 这个题比较容易的思路就是先寻找出数组分隔点,然后再通过target的大小进行二次二分查找。 但是其实我们可以把这两个步骤合二为一,但是要注意的坑比较多。 我们照常进行二分查找,如果nums[mid] == target,那就直接返回mid即可。 否则分以 阅读全文
posted @ 2020-10-05 17:10 ZJPang 阅读(101) 评论(0) 推荐(0) 编辑