目录
〇,图论概述
图论分为结构图论、代数图论、拓扑图论、极值图论、随机图论五大块。
一,无向图、有向图、混向图
图由节点和边组成。
按照边是否有方向,图分为无向图和有向图。如果部分有向部分无向,那就是混向图。
网格图根据场景,既可以是有向图也可以是无向图。
二,图的表示
常见的表示方法有三种:邻接表、邻接矩阵、边集。
三种表示方法都可以用于表达无向图和有向图。
无向图的默认表示法:邻接矩阵是对称的,一条边出现在2个节点的邻接表中。
无向图的缩半表示法:邻接矩阵不是对称的,一条边只出现在1个节点的邻接表中。
三,图的基本概念
0,自环
一条边的起点和终点相同,这条边就叫自环。
1,平行边(多重边)
在无向图中,关联一对顶点的无向边如果多于1条,则称这些边为平行边。
在有向图中,关联一对顶点的有向边如果多于1条,并且这些边的始点与终点相同(也就是它们的的方向相同),称这些边为平行边。
2,简单图
含平行边的图称为多重图,既不含平行边也不包含自环的图称为简单图。
3,入度、出度
有向图中,节点A的入度是指有多少条边指向A,出度是指有多少条边从A出发指向别的节点。
对于有自环的有向图,自环既算入度也算出度。
4,可达(连通)
在一个无向图或有向图中,如果存在一条路径以A为起点,以B为终点,我们就说从A到B可达。
也可以说从A到B是连通的。
5,路径、链路、回路
一系列的边首尾相连构成一条路径,如果起点终点相同则叫链路,不同则叫回路,合起来都叫路径。
6,简单路径、简单链路、简单回路
简单指的是路径中不会经过重复的点。(这也蕴含了不会经过自环)
四,图的常见运算
1,删边
在一个图中,删掉一个边。如果产生孤立点,则保留该孤立点。
2,删点
在一个图中,删掉一个点的操作指的是删掉一个点并删除和它相连的所有边。
PS:删点相当于若干次删边之后,再删掉一个孤立点。
3,缩边
在一个图中,删除一条边并把两个端点缩成一个点,对于简单图还需要把可能存在的重复边删除。
4,缩点
在一个图中,把互相连通的若干个点缩成一个点,把这些点之间的边都删除,避免产生自环,对于简单图还需要把可能存在的重复边删除。
PS:缩点相当于若干次缩边。
五,图的其他常见概念
1,严格子图、普通子图、广义子图
严格子图是原图只经过删点得到的图。
普通子图是原图只经过删点和删边得到的图。
广义子图是原图经过删点、删边和缩边得到的图。
在不同的语境下,"子图"这个词可能有这3种含义,需要根据情况区分。
2,删子图
在一个图中,删掉一个子图指的是把子图的所有节点(包括孤立点)从原图中删掉。
3,k连通
对于一个图,如果至少删除k(k>=0)个点,才能变成不连通图或者单点图,则称原图为k连通图
六,有向图的基图
把一个有向图A转化成无向图B,所有的有向边换成无向边,得到的图叫做原图的基图。
七,有向图的核
博弈的图论模型——必败态与核_Masked__Dance的博客-CSDN博客
八,最优划分问题
1,最优划分问题
划分是指把所有节点分为若干个不相交集合,即若干个模块,有些边在模块内,有些边连接2个不同的模块。
有一类图论问题,是求一种划分方式,满足某种划分约束,使得某个函数有最大值或最小值。根据函数的不同有不同的问题类型。
2,芯片布线问题
逻辑门或单元作为点,连线关系作为边,求模块划分方式,每个模块的节点数有下限和上限,使得所有模块间的边权值和最小。
3,分批光刻
不同的器件要分批次光刻,同一批次中的器件之间的间距不能太小,否则会互相干扰,这是工艺的极限。
抽象成最优划分问题就是,每个不相交集合内的所有边的权值有个最小值,把目标函数定义为所有最小值的最小值,求目标函数的最大值。