- 2
- 0
- 约2.06千字
- 约 19页
- 2026-06-10 发布于山东
- 举报
算法设计与分析本节要点CONTENTSA*算法在游戏中的应用
A*算法在游戏中的应用
A*算法在游戏中的应用
本题为八数码问题,要求通过x方块上下左右四个方向移动,经过最少的步数达到目标状态。例如,初始状态123x46758,经过r、d、r等3步后达到目标状态。A*算法在游戏中的应用
(1)预处理首先将字符串读入,例如,123x46758,将x转换为数字8,其他字符1~8转换成数字0~7。转换之后的棋盘如下图所示。用start.x记录x所在位置的下标。A*算法在游戏中的应用
(2)可解性判断把除x外的所有数字排成一个序列,求序列的逆序对数。逆序对数指对于第i个数,后面有多少个数比它小。例如,对于123x46758,6后面有一个数5比它小,6和5是一个逆序对,7后面有一个数5比它小,7和5是一个逆序对,该序列共两个逆序对。数码问题可以被看作N×N的棋盘,对于每一次交换操作,左右交换都不改变逆序对数,上下交换时逆序对数增加(N-1)、减少(N-1)或不变。A*算法在游戏中的应用
N为奇数:上下交换时每次增加或减少的逆序对数都为偶数,因此每次移动逆序对数,奇偶性不变。若初态的逆序对数与目标状态的逆序对数的奇偶性相同,则有解。N为偶数:上下交换时每次增加或减少的逆序对数都为奇数,上下交换一次,奇偶性改变一次。因此需要计算初态和目标状态x相差的
您可能关注的文档
最近下载
- 2025年喀什地区招聘中学教师考试试题(含答案).pdf
- 高考数学总复习:直线与圆的方程知识点总结.docx VIP
- 人因工程-因人而设智慧树知到期末考试答案章节答案2024年西安交通大学.docx VIP
- 高情商赞美话术大全.pptx VIP
- 2025年急性缺血性卒中诊治指南(全文).pdf VIP
- 和女孩子聊天的话题(8900字).docx VIP
- 2025年中国农业大学计算机科学与技术专业《数据库原理》科目期末试卷及答案.docx VIP
- 17重点高中自主招生数学试题).doc VIP
- 2025年中国农业大学计算机科学与技术专业《数据库原理》科目期末试卷及答案.docx VIP
- 西南大学2011级分子生物学试题及答案 B卷.docx VIP
原创力文档

文档评论(0)