问题核心思想:不改变原列表nums,将列表分成left,right两个列表,其中left列表任一元素都比right元素中的所有元素小。
问题解决思路:
1 设置一个mi数组,数组内容首先都赋值inf,之后反向遍历nums,确定数组后缀最小值
2 将mx初始化为0,mx的意义是数组前缀最大值
3 将nums迭代遍历,通过max(迭代值,mx)判断,来求出数组前缀最大值
4.每进行3步骤中的一次判断,就与mi[i]进行一次判断,一旦mx小于mx[i],则代表找到了分界点,返回i即可。
问题核心思想:不改变原列表nums,将列表分成left,right两个列表,其中left列表任一元素都比right元素中的所有元素小。
问题解决思路:
1 设置一个mi数组,数组内容首先都赋值inf,之后反向遍历nums,确定数组后缀最小值
2 将mx初始化为0,mx的意义是数组前缀最大值
3 将nums迭代遍历,通过max(迭代值,mx)判断,来求出数组前缀最大值
4.每进行3步骤中的一次判断,就与mi[i]进行一次判断,一旦mx小于mx[i],则代表找到了分界点,返回i即可。