[81]Search in Rotated Sorted Array II
2015-11-05 22:11
363 查看
【题目描述】
Follow up for "Search in Rotated Sorted Array":
What if duplicates are allowed?
Would this affect the run-time complexity? How and why?
Write a function to determine if a given target is in the array.
【思路】
和Search in Rotated Sorted Array相比,主要是要考虑有重复的情况,还是分成三种情况考虑:
1.nums[low]<nums[mid],mid在左半部分
2.nums[low]>nums[mid],mid在右半部分
3..nums[low]==nums[mid],有重复
【代码】
Follow up for "Search in Rotated Sorted Array":
What if duplicates are allowed?
Would this affect the run-time complexity? How and why?
Write a function to determine if a given target is in the array.
【思路】
和Search in Rotated Sorted Array相比,主要是要考虑有重复的情况,还是分成三种情况考虑:
1.nums[low]<nums[mid],mid在左半部分
2.nums[low]>nums[mid],mid在右半部分
3..nums[low]==nums[mid],有重复
【代码】
class Solution { public: bool search(vector<int>& nums, int target) { int n=nums.size(); int low,high,mid; low=0; high=n; while(low<high){ mid=(low+high)/2; if(nums[mid]==target) return true; if(nums[low]<nums[mid]){ if(nums[low]<=target&&nums[mid]>target) high=mid; else low=mid+1; } else if(nums[low]>nums[mid]){ if(nums[mid]<target&&nums[high-1]>=target) low=mid+1; else high=mid; } else{ low++; } } return false; } };
相关文章推荐
- hdoj 1251 统计难题
- du命令和df命令
- 1019. General Palindromic Number (20)
- Java文件操作(一)
- Activiti系列: 如何在web中使用activiti和sql server
- 1019. General Palindromic Number (20)
- Cookie案例
- linux 下查看外网ip
- Android基础入门教程——8.3.15 Paint API之——Typeface(字型)
- 网页制作之内嵌样式实例
- Spring注解详解
- 快速构建类
- CC2530裸机实现PWM输出(按键外部中断改变占空比)
- 量化分析师的Python日记【第1天:谁来给我讲讲Python?】
- Nancy
- dede使用方法----调用列表页的分页功能
- poj1177 Picture 扫描线求矩形周长并
- 关于Jenkins Dynamic Parameter 的简单使用
- 大数据实时框架原理
- jump-game-ii