huihut/interview

快排算法的疑问

la1den opened this issue · 3 comments

为什么 left++ 之后不交换 arr[end] 呢,移动后的 left 的位置的元素应该只是大于等于 arr[end] 而不能确定是等于吧

为什么 left++ 之后不交换 arr[end] 呢,移动后的 left 的位置的元素应该只是大于等于 arr[end] 而不能确定是等于吧

left++根本不可能执行,因为要执行left++必须left停留在<mid的元素上,也就是说退出循环left++的循环,只能是left==right,那这时left的位置的元素已经是>mid的了