/*试一试Johnson Trotter的算法*/
/*
数组初始为123
标记数组b【】的初始值是011(0 不可移动,1否)
/要不利用二维数组……?/
b【】中找值为一的
然后看对应的的lxs【】 数组中的值是不是最大的
计数
找到最大的
将其和相邻的比其小的数字交换
利用指针……?
什么作为结束标志呢……?
然后找到该数组中比他大的元素
将其对应的b【】中的值×(-1)
再继续从最后一个开始
进行前面的循环
/
其实寻找算法的原因无非就是把所有情况都列出来,像这样没有递归调用的方法
就可以实现对每一计数了
那是不是每一步都有解呢……
到最后倒不动的时候
可能就结束了
那怎么标记结束呢……
还是看的算法不多
啊啊
呵呵
继续看吧~!
找些小的程序来编编……先看算法
还是一遍学算法一边试着编程……
啊
思考……
/
*/
#include<stdio.h>
#include<stdlib.h>
main()
{
}
/*待续了 */