个人 可以做社交网站,网站专题建设合同,济南网站建设电话,阿里云网站备案入口class Solution {//因为最小值和最大值总是相邻的#xff08;除了初始状态#xff09;//1.用二分查找#xff0c;如果右侧是有序则最小值在左侧//2.如果右侧无序则最小值在右侧//如果mid正好是最小值#xff0c;那么右侧自然是有序的#xff0c;//为了将mid加入到搜索的一… class Solution {//因为最小值和最大值总是相邻的除了初始状态//1.用二分查找如果右侧是有序则最小值在左侧//2.如果右侧无序则最小值在右侧//如果mid正好是最小值那么右侧自然是有序的//为了将mid加入到搜索的一侧所以1中right应该移动到mid而不是mid-1//因为初始状态最小值在左侧所以先判断右侧包括这个情况public int findMin(int[] nums) {int left 0, right nums.length - 1;while(left right){int mid (right left) / 2;//右侧有序if(nums[mid] nums[right]){right mid;}//左侧有序else{left mid 1;}}return nums[left];}
}