毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 报告 >> 正文

用图搜索法:广度优先、深度优先和A*算法实现八数码问题 第2页

更新时间:2007-9-26:  来源:毕业论文

{char     x;                   //位置x和位置y上的数字换位

 char     y;                   //其中x0所在的位置

} EP_MOVE;

#define SIZE         3            //8数码问题,理论上本程序也可解决15数码问题,

#define NUM          SIZE * SIZE //move_gen需要做很多修改,输入初始和结束状态的部分和check_input也要修改

#define MAX_NODE     1000000

#define MAX_DEP      100

#define XCHG(a, b)   { a=a + b; b=a - b; a=a - b; }

#define TRANS(a, b)

{ long     iii; (b)=0; for(iii=0; iii < NUM; iii++) (b)=((b) << 4) + a[iii]; }    //将数组a转换为一个64位的整数b

#define RTRANS(a, b) \

     { \

         long     iii; \

         UINT64   ttt=(a); \

         for(iii=NUM - 1; iii >= 0; iii--) \

         { \

             b[iii]=ttt & 0xf; \

             ttt>>=4; \

         } \

     }    //将一个64位整数a转换为数组b

//

typedef struct   EP_NODE_Tag

{ UINT64              v;   //保存状态,每个数字占4个二进制位,可解决16数码问题

 struct EP_NODE_Tag   *prev;   //父节点

 struct EP_NODE_Tag   *small, *big;

} EP_NODE;

EP_NODE m_ar[MAX_NODE];

EP_NODE *m_root;

long     m_depth;                 //搜索深度

EP_NODE m_out[MAX_DEP];          //输出路径

//

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] 下一页

用图搜索法:广度优先、深度优先和A*算法实现八数码问题 第2页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©751com.cn 辣文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。