采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
老师我认为i>=j时候就可以直接break掉了不需要进行后面的判断,因为当i=j时候也就是那个特殊的位置元素一定是v这个数值大小,而且自己和自己交换也没有意义。最后仍然满足快速双路快速排序的性质,即左边的元素都是小于等于v,右半的元素都是大于等于v。虽然l交换的位置一个是j一个是j-1但是不影响结果。
如果你的意思是将 if(i > j) break
改成 if(i >= j) break
没有问题,你是对的。程序的逻辑依然正确:)
继续加油!:)
https://coding.imooc.com/learn/questiondetail/81440.html bobo老师在这个里的回答不是不可以吗?
上面的回答有问题,我已经在原回答上进行了补充。i >= j 的时候 break 掉没有问题。
登录后可查看更多问答,登录/注册
课程专为:短时间内应对面试、升职测评等艰巨任务打造
8.7k 21
5.7k 3
4.8k 5
1.3k 18