81. Search in Rotated Sorted Array II
来源:互联网 发布:房地产大数据公司 编辑:程序博客网 时间:2024/06/05 11:46
Problem:
Suppose an array sorted in ascending order is rotated at some pivot unknown to you beforehand.
(i.e., 0 1 2 4 5 6 7 might become 4 5 6 7 0 1 2).
Write a function to determine if a given target is in the array.
The array may contain duplicates.
这题是第33题是差不多的,但是多了一个条件,是允许数组内的数是重复的。这样的设定就会让33题的左右界判断出问题,上一题的判断肯定递增的条件是nums[start]<=nums[mid], 则在[start, mid]上元素是递增的。但是重复会使得=这个条件出现问题,例如[2,3,2,2]这样,所以要把条件划分成<,>和=三种情况。=的时候就把start元素移到下一位,避免判断两个相等的元素。
Code:(LeetCode运行6ms)
class Solution {public: bool search(vector<int>& nums, int target) { int start = 0; int end = nums.size(); while (start != end) { int mid = (start + end - 1) / 2; if (nums[mid] == target) { return true; } if (nums[start] < nums[mid]) { if (nums[start] <= target && target < nums[mid]) { end = mid; } else { start = mid + 1; } } else if (nums[start] > nums[mid]) { if (nums[mid] < target && target <= nums[end - 1]) { start = mid + 1; } else { end = mid; } } else { start++; } } return false; }};
阅读全文
0 0
- 81.Search in Rotated Sorted Array II
- 81. Search in Rotated Sorted Array II
- 81. Search in Rotated Sorted Array II
- 81. Search in Rotated Sorted Array II
- 81. Search in Rotated Sorted Array II
- 81. Search in Rotated Sorted Array II
- 81. Search in Rotated Sorted Array II
- 81. Search in Rotated Sorted Array II
- 81. Search in Rotated Sorted Array II
- 81. Search in Rotated Sorted Array II
- 81. Search in Rotated Sorted Array II
- 81. Search in Rotated Sorted Array II
- 81. Search in Rotated Sorted Array II
- 81. Search in Rotated Sorted Array II
- 81. Search in Rotated Sorted Array II
- 81. Search in Rotated Sorted Array II
- 81. Search in Rotated Sorted Array II
- 81. Search in Rotated Sorted Array II
- 8465:马走日(2.5基本算法之搜索)
- Java线程join()方法的用处,多线程同步
- 深入理解Java虚拟机——JVM的内存结构和内存分配策略
- Mysql中的STRAIGHT_JOIN和force index语句对sql的优化
- 前端模块化
- 81. Search in Rotated Sorted Array II
- 面向对象
- Java 中的数值类型转换
- vm linux 快照clone
- HDU 6199 gems gems gems (2017沈阳网赛
- AngularJS1.4.6
- 划船不靠桨
- CentOS 7 下 Zabbix 3.2 安装
- CSDN如何转载别人的文章