A*(路径搜索)算法
阅读数:59 评论数:0
跳转到新版页面分类
算法/数据结构
正文
0、这里假设有人要从A点去往B点。
1、找到与起始点相邻的所有可到达方块,将这些点加入到“候选列表”。
2、从“候选列表”中将A方块删除,并将其加入到“排除列表”,表明在此列表中的方块不需要再去关注。
3、路径评估 F=G+H
(1)G= 表示从A点到当前点的所经过的路径长度
(2)H=从当前点到目标点B的估计路径长度。这经常被描述为“启发式”,有时这样会引起歧义。之所以这么叫是因为这仅仅是一种猜测。事实上在找到路径之前我们并不知道实际路径长度,因为会有如墙,水等东西阻挡。这里给出一种计算H的方法,同时在网上有许多其他计算H值的方法。
4、不断的遍历“候选列表”并选择最小F值的点。
5、将其从“候选列表”中删除加入到“排除列表”
6、检查其领域内方块,排除不可通过方块,并且将没有在“候选列表”中的方块加入到“候选列表”。是当前选中方块成为父方块。
7、如果领域内存在方块在“候选列表中”中,那么就检查是否从当前点经由那个候选方块是一条更好路径。换句话说,检查那个方块的G值是否会因为我们使用了当前点到达那里而变小,如果不是,什么都不做,另一方面,如果新的路径G值变小了,就将那个候选方块的父节点改为当前点。最后重新计算那个候选节点的F和G值。
8、目标方块被加入到“排除类表”,这种情况下路径被找到
9、在“候选列表”中的点全部被放到了“排除列表中”,此时路径查找失败,没有通路。
相关推荐
一、介绍
1、二分图
其最大的特点在于,可以将图里的顶点分为两个集合,且集合内的点没有直接关联。
2、增广路径
增广路径是指,由一个未匹配的顶点开始,经过若干个匹配顶点,最后到达对面集合的一个未匹配
MD5,即“Message-Digest Algorithm 5”(信息-摘要算法),从名字来看就知道它是从MD3、MD4发展而来的一种加密算法,其主要通过采集文件的信息摘要,从此进行计算并加密。
M
deflate是同时使用lz77算法与huffman编码的一个无损压缩算法。人们普遍认为deflate不受任何专利所制约,deflate压缩与解压缩的源代码可以在开源的zlib库中找到。
一、密码学的常见概念
1、代替密码
代替密码是指先建立一个替换表,加密时通过查表,将明文的每个字母依次替换为对应的字符,生成密文。
按替换表的个数又细分为:
(1)单表代替密码
即一个明文字符对应一个
零-概述
ECB模式和CBC模式是最常用的两种模式。
1、需要块对齐的模式:ECB、CBC、PCBC
2、需要初始向量的模式:除了ECB模式外,都需要初始向量。
一、ECB,电子密码本
Electro
一、概述
1、图的表示法
图G = (V, E)的表示有邻接表和邻接矩阵两种形式。通常,对于| E |远小于| V | ^ 2的稀疏图,用邻接表比较合适。若图稠密或很小,或必须很快判别给定的两个顶点是