LeetCode之Find Minimum in Rotated Sorted Array II
来源:互联网 发布:视频下载软件 vd 编辑:程序博客网 时间:2024/05/16 23:49
本题的意思是给定一个升序排序的数组,然后以某个元素为分界点,将这个元素后面的元素平移到数组最前边,而我们并不知道这个分界元素是哪个,在变换后的数组中寻找最小值。
我采用二分查找的算法解决此题。首先将查找范围确定到整个数组,计算出中间下标,根据变换前数组元素升序的特点,判断变换后数组中间元素与最右端元素的大小:如果中间的大,说明最小元素在中间元素的右边,将查找范围缩小到中间元素与最右端元素之间,继续循环;如果中间的小,说明最小元素在中间元素的左边,将查找范围缩小到最左边元素与中间元素之间,继续循环;如果中间元素与最右端元素相等,那么最小元素在中间元素的左边或右边都有可能,无法判断如何缩小查找范围的情况下,只能将查找范围的最右端向左缩减一个元素。当查找范围缩小到只剩一个元素时,该元素即为最小元素。
class Solution { public: int findMin(vector<int>& nums) { int low = 0; int high = nums.size() - 1; int middle = 0; while (low < high) { middle = low + (high - low) / 2; if (nums[middle] > nums[high]) { low = middle + 1; } else if (nums[middle] < nums[high]) { high = middle; } else { high--; } } return nums[low]; }};
阅读全文
0 0
- LeetCode之Find Minimum in Rotated Sorted Array II
- leetcode 之Find Minimum in Rotated Sorted Array II
- leetcode之Find Minimum in Rotated Sorted Array II
- LeetCode之Find Minimum in Rotated Sorted Array II
- LeetCode 之 Find Minimum in Rotated Sorted Array II
- LeetCode之Find Minimum in Rotated Sorted Array II
- leetcode之Find Minimum in Rotated Sorted Array II 问题
- LeetCode Find Minimum in Rotated Sorted Array & LeetCode Find Minimum in Rotated Sorted Array II
- leetCode -Array 154. Find Minimum in Rotated Sorted Array II
- [Leetcode]Find Minimum in Rotated Sorted Array I & II
- LeetCode 154 Find Minimum in Rotated Sorted Array II
- [LeetCode] Find Minimum in Rotated Sorted Array II
- LeetCode: Find Minimum in Rotated Sorted Array II
- 【Leetcode】Find Minimum in Rotated Sorted Array II
- Find Minimum in Rotated Sorted Array II -- LeetCode
- Leetcode: Find Minimum in Rotated Sorted Array II
- leetcode Find Minimum in Rotated Sorted Array II
- leetcode - Find Minimum in Rotated Sorted Array II
- 最新PADS中电源符号的更换方法
- 初入C++(一) c++中的一些基础和与c的一些区别
- Two Sum
- 1.struts2的工作流程
- bugku ctf 听首音乐 wirteup
- LeetCode之Find Minimum in Rotated Sorted Array II
- 码云平台和git的使用帮助
- (24)单例设计模式两种写法:饿汉式和懒汉式
- HDU.1874 畅通工程续 (dijkstra)
- "应用程序无法正常启动(0xc000007b)。请单击 确定 关闭应用程序。"解决方法
- H5/JS入门
- sql 某字段各种值按月份统计
- OUTLINE转换为SPM
- python输入输出