图论算法相关

一、遍历

深度优先遍历

广度优先遍历

二、最短路径算法

https://mp.weixin.qq.com/s/i5YNtG-rDrCGEeKD9B8VWQ

迪杰斯特拉:

使用一张表,记录起点到所有点的距离,并且不断刷新

如果需要得到路径,可以使用一个from[]数组,表示当前下标的前一个。 

三、最小生成树

(学习连接,公众号五分钟学算法:最小生成树)

Prim算法:

顶点集合为V,边集合为E,再定义一个集合U存储已经遍历的节点

把当前遍历到的节点放入U中,然后寻找U集合中所有元素相邻的节点,找到领边最短的节点,放入U中

直到所有的节点都被放入U中,并且边的长度也记录完毕。

四、A*算法

f(n) = g(n)+h(n)

g(n):距离起点的距离

h(n):距离终点的预期距离

使用两个集合

openSet:待遍历节点

closeSet:已经遍历过的节点

https://paul.pub/a-star-algorithm/

发布了159 篇原创文章 · 获赞 41 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_37768971/article/details/102592819