快排求助

学术版

居然有人遇到了跟我刚学快排时一样的问题
by nothingness @ 2018-07-22 16:36:14


@[_XL_](/space/show?uid=83012) 在这个版本的快排中,有可能在扫到 $mid$ 时进行交换。如果 $mid$ 是一个数,那么不受影响;但是如果 $mid$ 是下标,那么 $a[mid]$ 的值就改变了,在交换一轮过后原来的 $a[mid]$ 不再是处于正确的位置,就会导致WA。 蒟蒻表述不大清楚,请见谅
by nothingness @ 2018-07-22 16:38:54


建议你用小数据手工模拟一下,这样就能理解了
by nothingness @ 2018-07-22 16:40:01


给你一组错误程序跑不出来的数据: ``` 7 2 5 3 6 4 7 1 ``` 正解不用说,但错误的程序是 ``` 1 2 3 5 4 6 7 ```
by nothingness @ 2018-07-22 16:41:30


|