摘要: 一、前言 在这里我将对A*算法的实际应用进行一定的探讨,并且举一个有关A*算法在最短路径搜索的例子。二、A*算法的程序编写原理 A*算法是最好优先算法的一种。只是有一些约束条件而已。我们先来看看最好优先算法是如何编写的吧。 如图有如下的状态空间:(起始位置是A,目标位置是P,字母后的数字表示节点的估价值)搜索过程中设置两个表:OPEN和CLOSED。OPEN表保存了所有已生成而未考察的节点,CLOSED表中记录已访问过的节点。算法中有一步是根据估价函数重排OPEN表。这样循环中的每一步只考虑OPEN表中状态最好的节点。具体搜索过程如下:1)初始状态: OP... 阅读全文
posted @ 2012-04-23 22:36 Mr_SuperBaby 阅读(419) 评论(0) 推荐(0) 编辑
摘要: 一、线性表1.逆转顺序表中的所有元素算法思想:第一个元素和最后一个元素对调,第二个元素和倒数第二个元素对调,……,依此类推。View Code void Reverse(int A[], int n){ int i, t; for (i=0; i < n/2; i++) { t = A[i]; A[i] = A[n-i-1]; A[n-i-1] = t; }}2.删除线性链表中数据域为item的所有结点算法思想:先从链表的第2个结点开始,从前往后依次判断链表中的所有结点是否满足条件,若某个结点的数据域为item,则删除该结点。最... 阅读全文
posted @ 2012-03-17 19:36 Mr_SuperBaby 阅读(860) 评论(0) 推荐(0) 编辑