首页 开发技术 C     /    博弈树(树的c实现)

博弈树(树的c实现)

上传者: qq971544916 | 上传时间:2022/9/2 22:54:44 | 文件大小:5KB | 文件类型:cpp
博弈树(树的c实现)
下棋属于一种博弈游戏,博弈过程可以用树(博弈树)来表示。
假设游戏由两个人(A和B)玩,开始由某个人从根结点开始走,两个人轮番走棋,每次只能走一步,下一步棋只能选择当前结点的孩子结点,谁先走到叶子结点为胜。
例如,对于下图所示的博弈树,若A先走,可以选f,B若选h,则A选j胜。
编写一程序,让计算机和人下棋。
当计算机走下一步时,可以根据以下情况决定下一步:(1)若存在可以确保取胜的一个孩子结点,则选择该结点作为下一步;
(2)若存在多个可以确保取胜的孩子结点,则选择其中高度最小的结点作为下一步(若有多个选择,则选最左边的结点);
(3)若不存在可以确保取胜的一个孩子结点,则选择高度最大的孩子结点作为下一步(若有多个选择,则选最左边的结点);
例:(下面的黑体为输入)(a,(b,(x)),(c,(d),(e,(g),(h)),(f)))abxcdeghfWhoplayfirst(0:computer;1:player)?1player:ccomputer:dSorry,youlost.Continue(y/n)?yWhoplayfirst(0:computer;1:player)?1player:xillegalmove.player:bcomputer:xSorry,youlost.Continue(y/n)?yWhoplayfirst(0:computer;1:player)?0computer:cplayer:fCongratulate,youwin.Continue(y/n)?n 本软件ID:9372674

文件下载

资源详情

-C

评论信息

  • viafcccy:
    有点小问题代码2019-06-02
  • weixin_42098673:
    感觉不错哦2018-11-11
  • Skybluewater:
    感谢大佬!2018-10-27

免责申明

【好快吧下载】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【好快吧下载】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【好快吧下载】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,8686821#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明