• 比右不比左,因为除法取整在只有两个元素时,会取到左边的元素,会导致判断取等,但是如果和右边在左右区间相差一就不会出现这种情况,而是继续操作直到区间端点相等

在元素值相等但是区间没有缩减应该如何?

缩减右区间端点值,因为此时left<right,缩减右边既不会错过最小值,因为mid和right的值相等;也不会导致区间出错,最多left=right-1时,right-=1后,left=right

为什么left = mid+1?

如果不这样,当left+1=right时,mid会等于left,导致left=mid陷入死循环;而nums[mid]> nums[right]保证了mid=left不会是最小的,还有right比它更小