资源简介
人工智能中,野人与传教士问题C语言程序实现
代码片段和文件信息
#include
#include
#define maxloop 100 /* 最大层数,对于不同的扩展方法自动调整取值 */
#define pristnum 3
#define slavenum 3
struct SPQ{ int srpr; /* 船运行一个来回后河右岸的野人、传教士的人数 */
int slpl; /* 船运行一个来回后河左岸的野人、传教士的人数 */
int ssrspr; /* 回来(由左向右时)船上的人数 */
int sstspt; /* 去时(由右向左时)船上的人数 */
int loop; /* 本结点所在的层数 */
struct SPQ *upnode *nextnode;/* 本结点的父结点和同层的下一个结点的地址 */
}spq;
int loopnum;/* 记录总的扩展次数 */
int openednum;/* 记录已扩展节点个数 */
int unopenednum;/* 记录待扩展节点个数 */
int resultnum;
struct SPQ *opened;
struct SPQ *oend;
struct SPQ *unopened;
struct SPQ *uend;
struct SPQ *result;
void initiate();
void releasemem();
void showresult();
void addtoopened(struct SPQ *ntx);
int search();
void goon();
int stretch(struct SPQ* ntx);
void recorder();
voi
评论
共有 条评论