153. Find Minimum in Rotated Sorted Array QuestionEditorial Solution
2016-08-09 14:33
15 查看
(i.e.,
153. Find Minimum in Rotated Sorted Array
我们可能首先想到大擂台赛,故时间复杂度0(n),但题目明显不是考这个,所以我们想到0(log)
首先这个数组旋转,肯定是先一个升序,后一个降序排序,但是根据移动元素的多少分为下列两种:
0 1 2 4 5 6 7
1. 4 5 6 7 0 1 2 移动元素大于一半
2 6 7 0 1 2 4 5 移动元素小于一半
class Solution {
public:
int findMin(vector<int>& nums) {
int l = 0;
int r = nums.size();
int min_ = nums[0];
while(l<r)
{
int mid = (l+r)/2;
if(nums[l] < nums[mid] )
l = mid;
else
r = mid;
if(nums[mid] < min_)
min_ = nums[mid];
}
return min_;
}
};
0 1 2 4 5 6 7might become
4 5 6 7 0 1 2).
153. Find Minimum in Rotated Sorted Array
我们可能首先想到大擂台赛,故时间复杂度0(n),但题目明显不是考这个,所以我们想到0(log)
首先这个数组旋转,肯定是先一个升序,后一个降序排序,但是根据移动元素的多少分为下列两种:
0 1 2 4 5 6 7
1. 4 5 6 7 0 1 2 移动元素大于一半
2 6 7 0 1 2 4 5 移动元素小于一半
class Solution {
public:
int findMin(vector<int>& nums) {
int l = 0;
int r = nums.size();
int min_ = nums[0];
while(l<r)
{
int mid = (l+r)/2;
if(nums[l] < nums[mid] )
l = mid;
else
r = mid;
if(nums[mid] < min_)
min_ = nums[mid];
}
return min_;
}
};
相关文章推荐
- Destination build/xxx.min.js not written because src files were empty
- 那些年我用MUI开发遇过的坑(二)
- Android开发之单线程模型中Message、Handler、MessageQueue、Looper之间的关系
- [iOS] 摄像头和相册-UIImagePickerController-浅析
- 【UE4学习】11_GearVR input 输入控制——inputTouch
- 子线程更新ui
- 【UE4学习】10_Oculus CV1 小遥控器的输入(input)控制
- 【UE4学习】09_SteamVR/Vive/VR 模式下 满屏/去黑边
- getparameter和getparametervalues的区别
- 【UE4学习】08_Package打包进入VR模式
- EditText输入事件截获与监 4000 听
- Ue4使用OpenCV插件
- Android报错com.android.builder.packaging.DuplicateFileException
- UE用法
- POJ 1679 The unique MST [次小生成树]
- Using Quiescent States to Reclaim Memory
- selectindexchanged select valuechanged textchanged
- UIColor,CGColor,CIColor三者的区别和联系
- UIImage CIImage CGImageRef
- RabbitMQ(四)远程连接RabbitMQ