其实不是什么重要的,只是第二个case和第四个case一直通不过,但自己拿来验证的case几乎都是对的,所以琢磨了很久这两个case是什么。刚开始以为最后一个是针对left==right,因为没写这个if的时候这一点是运行超时。后来发现N为奇数的时候,在length=1即两两比较的时候就会出错(sorted里最后一个没有输入),针对这个情况进行修改后,非常意外的,最后一个case通过了,第二个还是错的......所以说,最后一个case是针对奇数情况的。
我测试的例子是N=11,
4 5 6 7 8 9 10 11 0 3 1
如果有人这里没通过的话可以试一下是不是这个错......
怎么写我是不会贴的,因为我做之前参考了另一个人的思想,我们的思想是一样的,但是他用两个while就涵盖了所有情况(对,就是你们很可能会搜到的那个最后有一句请自行回避的那位),我分了这么多琐屑的分类,可见就算思路一样,结果还是会差很大,总之为了不被查重,具体步骤还是自己写比较好......