移数问题
我在写程序中遇到了一个问题,请大家请教.1 2 3
4 5 6
7 8
把子上面移成下面的图形.
1 2 3
4 5 6
8 7
右下角有一个空,就是用来移数的,我有一个办法就是令一个二维数组,
a[3][3],初始值为{1,2,3,4,5,6,7,8,0}
也就是令空格为0,数组中有一个数为0的时候,就可以与它四周的任何的一个数交换,
现在问题来了,就是数组中的数怎么可以让他为这个数,也可以为别的数.
比如a[0][0]可以与a[0][1]交换,也可以与a[1][0]交换。
而这里却没有条件与哪个交换,因为不知道与哪个交换会有可能移成所需的结果,现在也不知道,到底能不能移成,我也不清楚。请高手指点。谢谢