/*
题目:
把一个数组最开始的若干个元素搬到数组末尾,我们称之为数组的旋转。
输入一个递增排序的数组的旋转,输出旋转数组中的最小元素。
*/
/*
思路:
采用二分的方法,旋转数组实质上是上左半部分为递减数组,右半部分为递增数组。
取中间元素mid,若大于等于最右端的元素,则说明mid在左半部分,则low=mid+1;
若小于最右端的元素,则说明mid在右半部分,则high = mid; */
int minNumberInRotateArray(vector<int> rotateArray) {
int length = rotateArray.size();
if( length== 0 ) return 0;
int low = 0, high = length - 1, mid = 0;
while(low < high){
mid = low + ((high - low) >> 2);
if(rotateArray[mid] >= rotateArray[high]){
low = mid + 1;
}else if(rotateArray[mid] < rotateArray[high]){
high = mid;
}
}
return rotateArray[low];
}

  

最新文章

  1. [收集]MVC3 HTML辅助方法集录
  2. 用excel做分组散点图
  3. MongoDB GridFS 对图片进行增删改
  4. ios 多线程必读内容 :锁
  5. 原创docker dcos 的安装
  6. maven 多工程搭建演示
  7. GCC 编译详解
  8. 转!!URL和URI区别
  9. OpenGL图形管线和坐标变换[转]
  10. 从 IT 的角度思考 BIM(一):面向对象
  11. 五种I/O 模式——阻塞(默认IO模式),非阻塞(常用语管道),I/O多路复用(IO多路复用的应用场景),信号I/O,异步I/O
  12. 线性代数(矩阵乘法):POJ 2778 DNA Sequence
  13. jquery ajax调用
  14. 一步一步创建ASP.NET MVC5程序[Repository+Autofac+Automapper+SqlSugar](一)
  15. Yii 2.0.3 Advanced版控制器不能包含大写字母的Bug
  16. 【JVM】JVM随笔索引
  17. C# Math的说有函数 以及说明
  18. CodeCraft-19 and Codeforces Round #537 Div. 2
  19. Codeforces 584E - Anton and Ira - [贪心]
  20. Codeforces 799D Field expansion(随机算法)

热门文章

  1. How to check sqlsever table data type identity status ?
  2. Decorator - 装饰器
  3. 配置ASA防火墙 远程管理方式
  4. 在Unity中使用 luajit 64位加密
  5. Axure实现抽奖转盘(二)
  6. 【全集】大数据Linux基础
  7. Hexo | 超详细的hexo+githhub page搭建过程
  8. C# 利用委托事件进行窗体间的传值(简化)
  9. MySQL中的执行计划explain
  10. Centos8(Liunx) 中安装PHP7.4 的三种方法和删除它的三种方法