图论学习笔记

  • 图论的起源:七桥问题
    • 三要素:顶点集 V V V,边集 E E E,关联函数 Φ \Phi Φ
    • 无向图 有向图
    • 加权图
    • 有限图 平凡图 空图 n阶图 (n,m)图
    • 简单图
      • 无环 无重边
      • 完备图 K n K_n Kn:任意两个点之间都有一条边的简单图
    • 二部图(偶图) ( X , Y ) (X,Y) (X,Y)
      • 顶点集可以分为两个子集,每条边的顶点分别在两个子集中
      • 一个图是二部图当且仅当不含有奇圈
      • 完备二部图 K m , n K_m,_n Km,n
        • 神经网络中的全连接网络
  • 子图
    • 顶点导出子图
    • 边导出子图
    • 生成子图:顶点集相同的子图
  • 图的运算
    • 删点 删边
    • 并运算 交运算 差运算 对称差
  • 顶点的度
    • 最小度 δ \delta δ 最大度 Δ \Delta Δ
    • 度数计算
    • 奇点 偶点
    • 握手定理:总度数等于边数的两倍
    • k-正则图:每个顶点的度数都为k
  • 图的同构
    • 定义:顶点集之间一一对应,且对应顶点的边也一一对应
    • 必要条件:顶点数相同,边数相同,顶点度数序列相同

  • 路与连通性
    • 通路Walk:顶点和边都可以重复
    • 道路Trail:边不能重复,顶点可以重复
    • 路径Path:顶点和边都不能重复
    • 连通图:任意两个顶点之间存在路径
    • 定义:无圈连通图
    • 充要条件
      • 无圈,连通图
      • 无圈, ϵ = v − 1 \epsilon=v-1 ϵ=v1
      • 连通, ϵ = v − 1 \epsilon=v-1 ϵ=v1
      • 连通, G − e G-e Ge不连通
      • 无圈, G + e ( e ∉ G ) G+e(e \notin G) G+e(e/G)有唯一圈
      • 无环,任二顶点有唯一路径
    • 生成树
      • 每个连通图至少包含一个生成树
      • 生成树的计数 τ ( G ) \tau(G) τ(G)
        • Carley
          • 边的收缩:删除一条边,重合其端点
          • τ ( G ) = τ ( G − e ) + τ ( G ⋅ e ) \tau(G)=\tau(G-e)+\tau(G \cdot e) τ(G)=τ(Ge)+τ(Ge)
        • 矩阵树定理
          • 生成树的个数为拉普拉斯矩阵C的任意代数余子式的值
          • C=D-A,其中D为度对角矩阵,A为邻接矩阵
    • 最小生成树
      • Kruskal算法:每次选择权重最小且不在同一个连通分支的边
      • Prim算法:每次选择横跨切割且权重最小的边

最短路径问题

  • 单源最短路径
    • Dijkstra:每次选择未访问且距离最近的点,对其出发的所有边进行松弛操作(权重非负)
    • Bellman-Ford:对每条边进行松弛操作,重复V次
  • 全局最短路径
    • Floyd-Warshall:依次选择每个点作为中转节点

图的连通性

  • 点连通度 K ( G ) K(G) K(G):最小点断集包含的点数
    • G G G ( n , m ) (n,m) (n,m)单图,若 δ ( G ) ≥ ⌊ n 2 ⌋ \delta(G) \ge \lfloor \frac{n}{2} \rfloor δ(G)2n,则 G G G是连通图
  • 边连通度 K ′ ( G ) K'(G) K(G):最小边断集包含的边数
  • 惠特尼定理: K ( G ) ≤ K ′ ( G ) ≤ δ K(G) \le K'(G) \le \delta K(G)K(G)δ
    • 一个非平凡图是K连通的,当且仅当任意两点之间存在K条内不相交的路径
    • 一个非平凡图是k边连通的,当且仅当任意两点之间存在k条边不重复的路径
  • 敏格尔定理
    • 分离两个点的最少点数 = 内不相交的路径的最大数目
    • 分离两个点的最少边数 = 边不重复的路径的最大数目
  • 图的关键性部位
    • 割点(关节点):边集合分为两个非空子集,两个非空子集恰有一个公共顶点,即割点
    • 割边(桥):边 e e e是割边当且仅当 e e e不在图 G G G的任意圈中
    • 割集:最小边断集
    • 双连通分量(块):不含割点的连通图
  • 哈拉里图 H k , n H_{k,n} Hk,n:边数最少的k连通图

匹配

  • 图的匹配
    • 匹配
      • 定义:图G的边子集M中任意两条边没有共同顶点,M称为G的一个匹配
      • 最大匹配:边数最多的匹配
      • 理想匹配:渗透所有点的匹配
      • M交错路:匹配边和非匹配边交错出现的路径
      • M可增长路径:起点和终点都是非渗透点的M交错路
    • 点覆盖
      • 定义:图G中每条边至少有一个顶点在顶点子集K中,K称为点覆盖
      • 极小点覆盖:任意子集都不是点覆盖
      • 最小点覆盖:包含点数最小的点覆盖
    • Berge定理:M是G的最大匹配的充要条件是不含有M可增长路径
    • Hall定理: ( X , Y ) , ∀ S ⊆ X , ∣ N ( S ) ∣ ≥ ∣ S ∣ (X,Y), \forall S \subseteq X, |N(S)| \ge |S| (X,Y),SX,N(S)S
      • 证明二部图 ( X , Y ) (X,Y) (X,Y)是否存在理想匹配
    • Konig定理:二部图最大匹配的边数等于最小覆盖的顶点数
    • Tutte定理: o ( G − S ) ≤ ∣ S ∣ o(G-S) \le |S| o(GS)S
      • 证明图 G G G是否存在理想匹配
  • 匈牙利算法
    • Berge定理+Hall定理
    • Edmonds算法:任意匹配出发,寻找M可增长路径,得到更大的匹配
    • 应用
      • 二部图中寻找理想匹配
      • 二部图中寻找最大匹配

行遍性问题

  • 边的行遍性
    • 欧拉图:存在欧拉巡回的图
      • 欧拉巡回:经过每条边正好一次回到出发点
    • G是欧拉图,等价于以下命题
      • G的顶点度数都是偶数
      • G的边集合能划分为若干个边不相交的圈之并
    • 中国邮递员问题
      • 寻找最佳巡回
      • G是欧拉图
        • Fleury算法:除非没有选择,否则不走割边
        • Hierholzer算法:不断产生闭道路,并把他们并在一起
      • G不是欧拉图
        • 只有两个奇度顶点
          • 在两个奇度顶点的最短路径上添加边,变成欧拉图
        • 有2n个奇度顶点(n>1)
          • Edmonds算法:寻找最佳配对,变成欧拉图
  • 顶点的行遍性问题
    • 哈密尔顿图:存在哈密尔顿圈的图
      • 哈密尔顿圈:经过每个顶点正好一次的圈
    • 流动推销员问题
      • 最佳推销员回路:经过每个顶点至少一次的权最小闭通路
    • 近似算法
      • 构造算法和改进算法
      • Christofides最小权匹配算法:在最小生成树的基础上,在奇度顶点之间按照最小权匹配添加边,得到欧拉图,在欧拉巡回上去掉重复顶点,得到H圈
      • 二边逐次修正法:任意H圈出发,寻找是否存在能够改进的两条不相邻的边,直到不能改进为止

参考资料

  • 图论与网络最优化算法
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值