人工智能 野人过河问题 免费.docVIP

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实 验 报 告 课程名称 人工智能_____________ 实验项目 野人过河问题_______________ 实验仪器 电脑 、visual C++_________ 系 别 计算机学院____________ 专 业 __计算机科学与技术_____ 班级/学号 学生姓名 _ __ 实验日期 2010年 月 日_______ 成 绩 _______________________ 指导教师 实验目的 理解并熟悉掌握 实验内容 三、代码和结果 #include stdio.h #include stdlib.h #include ctype.h #define maxloop 100 /* 最大层数,对于不同的扩展方法自动调整取值 */ #define pristnum 3 /*初始化时设定有3个野人3个传教士,实际可以改动*/ #define slavenum 3 struct SPQ{ int sr,pr; /* 船运行一个来回后河右岸的野人、传教士的人数 */ int sl,pl; /* 船运行一个来回后河左岸的野人、传教士的人数 */ int ssr,spr; /* 回来(由左向右时)船上的人数 */ int sst,spt; /* 去时(由右向左时)船上的人数 */ 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(); int main() { int flag; /* 标记扩展是否成功 */ for( ; ; ) { initiate(); flag = search (); if(flag == 1) { recorder(); releasemem(); showresult(); goon(); } else { printf(无法找到符合条件的解); releasemem(); goon(); } } system(pause); return 0; } void initiate() { int x; char choice; uend = unopened = (struct SPQ*)malloc(sizeof(spq)); if(uend==NULL) { printf(\n内存不够!\n); exit(0); } unopenednum=1; openednum=0; unopened - upnode = unopened; /* 保存父结点的地址以成链表 */ unopened - nextnode = unopened; unopened - sr = slavenum; unopened - pr = pristnum; unopened - sl = 0;

文档评论(0)

zhuliyan1314 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档