数据结构-图

Edit By Scorpion

0.导言 前面大家接触了数据结构树,从广义上来讲树是一种特殊的图。

1.学习资源

中国大学MOOC

2.需要掌握技能包

图的分类 : 无向图,有向图 无权图,带权图

存储结构

数据结构-图_第1张图片
连接矩阵
数据结构-图_第2张图片
邻接表

参考代码实现
[思考]应用场景:稀疏?稠密?

图的遍历 广度优先遍历 深度优先遍历
[思考]应用场景:

最小生成树
Prim算法
Kruskal算法

最短路径 最短路径算法--Dijkstra算法,Bellmanford算法,Floyd算法,Johnson算法

3延伸阅读

真正统治世界的十大算法

数据结构之图

4任务描述

【Step1】给定两个端点,求最短路径长度(不要忘记判断是否连通)

【Step2】给定两个端点,输出最短路径 (可能不唯一,一条便好)

【Step3】对图进行预处理,即处理后,给定任意两端点能够迅速输出两者之间的最短路径

5 Hint:

【1】从小数据开始测试,避免头昏脑涨

【2】因为图的节点特别多,每次Debug比较耗时,所以有没有比较好的方式呢? (当然有:将输入流保存在文件里,运行时读取文件)

【3】预处理方式之一: 利用N*N矩阵(天啊,不能再多说了)

你可能感兴趣的:(数据结构-图)