Suppose an array sorted in ascending order is rotated at some pivot unknown to you beforehand.

(i.e., `[0,0,1,2,2,5,6]` might become `[2,5,6,0,0,1,2]`).

You are given a target value to search. If found in the array return `true`, otherwise return `false`.

Example 1:

```Input: nums = [2`,5,6,0,0,1,2]`, target = 0
Output: true
```

Example 2:

```Input: nums = [2`,5,6,0,0,1,2]`, target = 3
Output: false```

• This is a follow up problem to Search in Rotated Sorted Array, where `nums` may contain duplicates.
• Would this affect the run-time complexity? How and why?

```class Solution {
public:
bool search(vector<int>& nums, int target) {
int n = nums.size(), left = , right = n - ;
while (left <= right) {
int mid = (left + right) / ;
if (nums[mid] == target) return true;
if (nums[mid] < nums[right]) {
if (nums[mid] < target && nums[right] >= target) left = mid + ;
else right = mid - ;
} else if (nums[mid] > nums[right]){
if (nums[left] <= target && nums[mid] > target) right = mid - ;
else left = mid + ;
} else --right;
}
return false;
}
};```

Github 同步地址：

https://github.com/grandyang/leetcode/issues/81

Search in Rotated Sorted Array

https://leetcode.com/problems/search-in-rotated-sorted-array-ii/

https://leetcode.com/problems/search-in-rotated-sorted-array-ii/discuss/28194/C%2B%2B-concise-log(n)-solution

https://leetcode.com/problems/search-in-rotated-sorted-array-ii/discuss/28218/My-8ms-C%2B%2B-solution-(o(logn)-on-average-o(n)-worst-case)

LeetCode All in One 题目讲解汇总(持续更新中...)

## [LeetCode] Search in Rotated Sorted Array II 在旋转有序数组中搜索之二的更多相关文章

1. [LeetCode] 81. Search in Rotated Sorted Array II 在旋转有序数组中搜索之二

Suppose an array sorted in ascending order is rotated at some pivot unknown to you beforehand. (i.e. ...

2. [LeetCode] 81. Search in Rotated Sorted Array II 在旋转有序数组中搜索 II

Follow up for "Search in Rotated Sorted Array":What if duplicates are allowed? Would this ...

3. [LeetCode] Find Minimum in Rotated Sorted Array II 寻找旋转有序数组的最小值之二

Follow up for "Find Minimum in Rotated Sorted Array":What if duplicates are allowed? Would ...

4. [LeetCode] 154. Find Minimum in Rotated Sorted Array II 寻找旋转有序数组的最小值之二

Suppose an array sorted in ascending order is rotated at some pivot unknown to you beforehand. (i. ...

5. LeetCode 33. Search in Rotated Sorted Array（在旋转有序序列中搜索）

Suppose an array sorted in ascending order is rotated at some pivot unknown to you beforehand. (i.e. ...

6. LeetCode 81 Search in Rotated Sorted Array II（循环有序数组中的查找问题）

题目链接:https://leetcode.com/problems/search-in-rotated-sorted-array-ii/#/description   姊妹篇:http://www. ...

7. [LeetCode] 154. Find Minimum in Rotated Sorted Array II 寻找旋转有序数组的最小值 II

Follow up for "Find Minimum in Rotated Sorted Array":What if duplicates are allowed? Would ...

8. LeetCode 154. Find Minimum in Rotated Sorted Array II寻找旋转排序数组中的最小值 II (C++)

题目: Suppose an array sorted in ascending order is rotated at some pivot unknown to you beforehand. ( ...

9. LeetCode 153. Find Minimum in Rotated Sorted Array （在旋转有序数组中找到最小值）

Suppose an array sorted in ascending order is rotated at some pivot unknown to you beforehand. (i.e. ...

## 随机推荐

1. hdu5715 XOR 游戏 [2016百度之星复赛D题]

比赛的时候没仔细想,赛后一想这题其实挺简单的,先求出序列的异或前缀和,然后将异或前缀和建出一颗trie树,然后我们可以二分答案,把问题变成判定性问题,判定是否存在一种方案,使得所有的分组的异或和都大 ...

2. for循环与for in循环

3. POJ 1502 MPI Maelstrom

MPI Maelstrom Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 20000/10000K (Java/Other) Total ...

4. CSS处理溢出

如果内容超过的区块的大小,内容就会溢出,可以使用下面的方法控制溢出 overflow visible 不剪切内容也不添加滚动条 auto 在必需时对象内容才会被裁切或显示滚动条 hidden 不显示超 ...

5. 了解jsonp

<script>                //创建全局函数,用来处理 跨域 获取到的信息:        function name(data){            ....   ...

6. c++ iostream 相关使用

索引: C++的iostream标准库介绍+使用详解(转) iostream格式化输出 c++ 字符串流 sstream(常用于格式转换) 关于#include <iomanip>中iom ...

7. 基于tgp协议的套接字的 粘包解决

客户端 import socket import struct import json phone = socket.socket(socket.AF_INET, socket.SOCK_STREAM ...

8. 201521123113《Java程序设计》第9周学习总结

1. 本周学习总结 2. 书面作业 本次PTA作业题集异常 Q1.常用异常 题目5-1 1.1 截图你的提交结果(出现学号) 1.2 自己以前编写的代码中经常出现什么异常.需要捕获吗(为什么)?应如何 ...

9. 机器学习 ML.NET 发布 1.0 RC

ML.NET 是面向.NET开发人员的开源和跨平台机器学习框架(Windows,Linux,macOS),通过使用ML.NET,.NET开发人员可以利用他们现有的工具和技能组,为情感分析,推荐,图像分 ...

10. 【Selenium】【BugList5】chrom窗口未关闭，又新开窗口，报错：[8564:8632:0522/111825.341:ERROR:persistent_memory_allocator.cc(845)] Corruption detected in shared-memory segment.

环境信息:Windows7 64位 + python 3.6.5 + selenium 3.11.0 +pyCharm 解决方法: 执行 driver = webdriver.Chrome()前必须把 ...