有时间在扩充内容
一、基础图论
无向图、有向图
简单图、完全图、赋权图
顶点的度
子图与图的连通性
连通分支
图的矩阵表示:关联矩阵、邻接矩阵
树
生成树
最小生成树
网络
网络流
二、常用算法
1、最短路算法
Dijkstra算法
Floyd算法
2、最小生成树
Kruskal算法
Prim算法
三、经典问题
1、着色问题
2、最大流与最小费用流
3、旅行商问题
4、计划评审法和关键路线法
四、MatLab工具箱
graph:无向图;digraph:有向图
G = graph 或者 G = digraph 创建空的对象
graph与digraph有很多参数及用法,这里不做赘述,可查阅MatLab官方文档
例:G = graph(s, t, weights):使用顶点对组s,t 和权重向量 weights 创建赋权无向图
W1 = adjacency(G):导出邻接矩阵的稀疏矩阵
W2 = incidence(G):导出关联矩阵的稀疏矩阵
distance 求图中所有顶点对之间的最短距离
conncomp 找无向图的连通分支,或有向图的强(弱)连通分支
isdag 测试有向图中是否含有圈,不含返回1
isomorphism 确定两个图是否同构
maxflow 计算有向图的最大流
minspantree 在图中求最小生成树
reordernodes 对图顶点重新排序
shortestpath 求图中指定的一对顶点间的最短距离和最短路径
shortestpathtree 求顶点的最短路径树
subgraph 提出子图