图的总结

图的概念

连通:如果两个顶点有路径,则是连通

连通图:如果任意两个点都有连通的路径,则是连通图

连通分量:就是极大连通子图,包含结点有尽可能多的边

生成树:一些结点包含尽可能少的边,但是要确保连通,不存在环路

如果是有向图则为强连通,强连通分量

图的存储结构和基本操作

邻接矩阵法

邻接表法

表示方法不唯一

图的遍历

广度优先遍历:对每一层尽可能的访问完,类似树的层序遍历,需要使用辅助队列

空间复杂度是辅助队列

时间复杂度主要集中在,找边和访问结点上

深度优先遍历:对每个结点尽可能的往深处探索,会使用到递归工作栈,时间复杂度和空间复杂的和BFS相同

最小生成树
Prim

思路:根据顶点找到最小的边,为贪心算法,时间复杂度和边无关,适合边稠密的图

克鲁斯卡尔

思路,每次找到最短的边,两边相连,如果已经连接,则放弃

适合边稀疏 O(Elog2E)

最短路径

单源到各顶点最短:迪杰斯特拉算法

点兑点路径最小:Floyd算法

迪杰斯特拉:从一个点出发每次确定所脸的最小边,然后加入集合并更新路径数组

时间复杂度O(v^2)

Floyd算法允许负权值

拓扑排序

每个点只会出现一次

关键路径
  1. 缩短关键活动时间不一定减少整个工期,可能从关键活动变为非关键活动
  2. 关键路径并不唯一
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值