Find Minimum in Rotated Sorted Array II
生活随笔
收集整理的这篇文章主要介绍了
Find Minimum in Rotated Sorted Array II
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
Description:
Follow up for "Find Minimum in Rotated Sorted Array":
What if duplicates are allowed?
Would this affect the run-time complexity? How and why?
Suppose a sorted array 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).
Find the minimum element.
The array may contain duplicates.
Code:
bool flag = true;int findMin(vector<int>& nums) {if (nums.size()==0){flag = false;return 0;}int left = 0;int right = nums.size()-1;while (left < right){int mid = (left + right)/2;if (nums[mid] < nums[right])right = mid;else if (nums[mid] > nums[right])left = mid+1;else{//此时不能判最小值在左边还右边,遍历判断int result = nums[left];for (int i = left+1; i <= right; i++){if ( nums[i] < result)result = nums[i];}return result; }}return nums[left];}
转载于:https://www.cnblogs.com/happygirl-zjj/p/4592202.html
总结
以上是生活随笔为你收集整理的Find Minimum in Rotated Sorted Array II的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 委托重载和使用
- 下一篇: Codeforces Round #30