题目
思路
这里的旋转和33题目的旋转不是一个概念,但是完全可以借鉴33的思路
此时最小值要么出现在分界点
要么当数组正好是顺序排列的时候,(也就是分界点在数组索引外), 最小为nums[0]
33题目指路:33. 搜索旋转排序数组
/**
* @param {number[]} nums
* @return {number}
*/
var findMin = function(nums) {
let left = 0;
let right = nums.length;
let mid;
while(left < right){
mid = left + Math.floor((right - left)/2);
if(nums[mid] >= nums[0]){
left = mid + 1;
}else{
right = mid;
}
}
let pos = left;
if(left === nums.length){
return nums[0];
}else{
return nums[pos];
}
};