想着想着就忘了有什么问题没解决,坑啊 一开始读错题意了,而且一着急写了两大段差不多的代码,冗余度啊,不说了.. 显然的一点,给的数据是绝对离散的,每行都是1~m的排列 难点一.如何移动能使未排序的数组移动后有序,并且移动步数最小 从前到后,遇到不是位置等于名次的数,就和在他名次的位置的那个数的位置交换 算法可以保证终止,但不能证明其最小 //其实只要小于n+1 发现事实:对于相同的交换操作,如果每一行都有,我们显然可以都顺便做掉 难点二.移动先后的选择,如果你先移动好了一个有序组,后面又加了交换…