假设一个排好序的数组在其某一未知点发生了旋转(比如0 1 2 4 5 6 7 可能变成4 5 6 7 0 1 2)。你需要找到其中最小的元素。
样例
样例 1:
输入:[4, 5, 6, 7, 0, 1, 2]
输出:0
解释:
数组中的最小值为0
样例 2:
输入:[2,1]
输出:1
解释:
数组中的最小值为1
注意事项
你可以假设数组中不存在重复元素。
class Solution {
public:
/**
* @param nums: a rotated sorted array
* @return: the minimum number in the array
*/
int findMin(vector<int> &nums)
{
// write your code here
sort(nums.begin(), nums.end());
return nums[0];
}
};
本文介绍了一种在已知数组被旋转后的状态下查找最小元素的方法。通过给出具体实例,展示了如何利用排序特性来确定最小值的位置。文章还提供了一个简单的解决方案——重新排序并返回第一个元素。
533

被折叠的 条评论
为什么被折叠?



