题解 | #旋转数组的最小数字#
旋转数组的最小数字
https://www.nowcoder.com/practice/9f3231a991af4f55b95579b44b7a01ba
using System; using System.Collections.Generic; class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param nums int整型一维数组 * @return int整型 */ public int minNumberInRotateArray(List<int> nums) { // write code here if (nums == null || nums.Count == 0) return 0; if (nums.Count == 1) return nums[0]; nums.Sort(); return nums[0]; } public int EF(List<int> nums, int nL, int nR) { if (nL > nR) return nL - 1; int nM = (nL + nR) / 2; if (nums[nM] <= nums[nL] && nums[nM] <= nums[nR]) return nM; if (nums[nM] >= nums[nL]) return EF(nums, nM + 1, nR); else return EF(nums, nL, nM); } }