二、程序运行测试 A*算法求解八数码问题一、 详细设计说明1. 评价函数以当前状态下各将牌到目标位置的距离之和作为节点的评价标准。距离的定义为:“某将牌行下标与目标位置行下标之差的绝对值 + 列下标与目标位置列下标之差的绝对值”。距离越小,该节点的效果越好。某个状态所有将牌到目标位置的距离之和用“h值”表示。2. 主要函数2.1 countH(state & st);countH函数功能是计算st状态的h值。计算过程中将会用到rightPos数组,数组里记录的是目标状态下,09每个将牌在九宫格里的位置(位置 = 行下标 * 3 + 列下标)。2.2 f(state * p);f()=h()+level2.3 look_up_dup(vector & vec, state * p);在open表或close表中,是否存在指定状态p,当找到与p完全相等的节点时,退出函数。2.4 search(state & start);在open表不为空时,按f值由小到大对open表中元素进行排序。