思维导图分享

链接:https://www.zhixi.com/view/73a5172e
密码:7813

图论

图的基础

图的基本概念

图的定义

一个图G定义为一个三元组<V,E,φ>,记作G=<V,E,φ>。
结点:其中V是个非空有限集合,它的元素称为结点;
边:E也是个有限集合,其元素称为边
而φ是从E到V的无(有)序偶集合上的一个映射。
无序(无向边)
若边e∈E与无序结点对(vi,vj)相联系,则φ(e)= (vi,vj),这时边e称为无向边,有时简称为边;
有序(有向边)
边e∈E与有序结点对<vi,vj>相联系,则φ(e)=<vi,vj>,此时边e称为有向边或弧
  • vi称为弧e的始结点

  • vj称为弧e的终结点

结点vi与vj由一条边(或弧)e所联结,则称结点vi和vj是边(或弧)e的端结点
  • 同时也称结点vi与vj是邻接结点,记作vi adj vj;
    否则为非邻接结点,记作vi nadj vj。
邻接边或弧:关联同一个结点的两条边或弧
环:联结一个结点与它自身的一条边
  • 环的方向没有意义
如果把图G中的弧或边总看作联结两个结点,

则图G可简记为G=<V,E>,
其中V是非空结点集,
E是联结结点的边集或弧集

图的分类

有向图
每条边都是有向边
无向图
每条边都是无向边
混合图
有些边是有向边,另一些边是无向边
简单图
在图G=<V,E>中,如果任何两结点间不多于一条边

(对于有向图中,任何两结点间不多于一条同向弧),
并且任何结点无环,则图G称为简单图;

多重图
若存在两结点间多于一条边(对于有向图中,两结点间多于一条同向弧),

则图G称为多重图

  • 平行边或弧

    • 联结两结点之间的多条边或弧
  • 重数

    • 平行边或弧的条数
加权图
给每条边或弧都赋予权的图G=<V,E>,称为加权图,

记为G=<V,E,W>,其中W表示各边之权的集合。

  • 加权图在实际中有许多应用,
    如在输油管系统图中,权表示单位时间流经管中的石油数量;
    在城市街道中,权表示通行车辆密度;
    在航空交通图中,权表示两城市的距离等等
无向完全图
在简单无向图G=<V,E>中,若V中的每个结点都与其余的所有结点邻接

(∀vi)(∀j)(vi,vj∈V→(vi,vj)∈E)
记作K|V|。若|V|=n,该图记作Kn。

零图
在一个图中,如果一个结点不与任何其它结点邻接,则称该结点为孤立结点。

仅有孤立结点的图,称为零图

  • 在零图中,边集为空集。若一个图中只含一个孤立结点,该图称为平凡图。
k度正则图
在无向图G=<V,E>中,如果每个结点的度是k,即(∀v)(v∈V→d(v)=k),则图G称为k度正则图。

有向图的度
结点的出度
  • 在有向图G=<V,E>中,对任意结点v∈V,以v为始结点的弧的条数,
    称为结点v的出度,记为d+(v);
结点的入度
  • 以v为终结点的弧的条数,称为v的入度,记作d-(v);
结点的度数
  • 结点v的出度与入度之和,称为结点的度数,记为d(v)
d(v)=d+(v)+d-(v)
无向图的度
对于无向图G=<V,E>,结点v∈V的度数等于联结它的边数,也记为d(v)。

若v点有环,规定该点的度数因环而增加2。

对于无向图G=<V,E>,记:

Δ(G)或Δ=max{d(v)|v∈V}
δ(G)或δ=min{d(v)|v∈V}
它们分别称为图G的最大度和最小度

定理1:给定无向图G=<V,E>,结点的度数总和等于边数的两倍
依据度的结点分类
奇度结点:度数为奇数的结点
偶数结点:度数为偶数的结点
定理2:在任何无向图中,奇度结点的数目为偶数

子图

子图的定义
(1) 如果V2⊆V1和E2⊆E1,则称G2为G1的子图,记为G2⊆G1。
(2) 如果V2⊆V1,E2⊆E1且E2≠E1,则称G2为G1的真子图,记为G2⊆G1。
(3) 如果V2=V1,E2⊆E1,则称G2为G1的生成子图
(4)对于图G=<V,E>,显然图<V,E>和图<V,∅>分别是图G的生成子图,并称它们为平凡生成子图
诱导子图
设图G2=<V2,E2>是图G1=<V1,E1>的子图。

若对任意结点u和v,如果[u,v]∈E1,有[u,v]∈E2,则G2由V2惟一地确定,
并称G2是结点集合V2的诱导子图,记作或G[V2];
如果G2无孤立结点,且由E2所惟一确定,则称G2是边集E2的诱导子图,
记为或G[E2]。

补图
设图G1=<V1,E1>
和图G2=<V2,E2>是
图G=<V,E>的子图。如果
E2=E-E1且G2=<E2>,
则称图G2是相对于图G的
子图G1的补图。
给定图G=<V,E>,若存在图G1=<V,E1>,

并且E1∩E=∅和图<V,E1∪E>是完全图,则G1称为相对于完全图的G的补图,
简称G1是G的补图,并记为G1=~G 。
显然,G与~G互为补图。

图的同构

定义
由同构的定义可知,不仅结点之间要具有一一对应关系,

而且要求这种对应关系保持结点间的邻接关系。
对于有向图的同构还要保持边的方向

图同构的必要条件
(1) 结点数目相等;
(2) 边数相等;
(3) 度数相同的结点数目相等。

路与回路

路(链)和回路的定义

给定无向图(或有向图)G=<V,E>。令v0,v1,…,vm∈V,边(或弧)e1,e2,…,em∈E,其中vi-1,vi是ei的结点,交替序列v0e1v1e2v2…emvm称为连接v0到vm的链(或路)
v0和vm分别称为链(或路)的始结点和终结点
边(或弧)的数目称为链(或路)的长度
v0=vm时,该链(或路)称为圈(或回路)。
链(路)
简单链(或路)定义;在一条链(或路)中,出现的边(或弧)都是不相同的
基本链(基本路)定义:在一条链或路中,出现的结点都是不相同的
每条基本链或基本路必定是简单链或简单路
在一圈(或回路)中,若出现的每条边(或弧)恰好一次,称该圈(或回路)为简单圈(或简单回路);若出现的每个结点恰好一次,称该圈(或回路)为基本圈(或基本回路)。
对于简单图来说,链(或路)和圈(或回路)能够仅用结点序列表示。

定理1:在一个图中,若从结点vi到结点vj存在一条链(或路),则必有一条从vi到vj的基本链(或基本路)。

定理2:在一个具有n个结点的图中,则

(1) 任何基本链(或路)的长度均不大于n-1。
(2) 任何基本圈(或回路)的长度均不大于n。

定义:在一个图中,若从vi到vj存在任何一条链(或路),则称从vi到vj是可达的,或简称vi可达vj。

规定:每个结点到自身都是可达的
定义连通分图:两结点之间是可达的当且仅当它们属于同一个子图,这种子图就是连通分图
图G的连通分图的个数,记为ω(G)。
定义连通图:若图G只有一个连通分图,则称G是连通图;否则,称图G为非连通图或分离图。

相关说法

删除去结点、结点集
从图G=<V,E>中删去结点集S是指作V-S以及从E中删去S中的全部结点相联结的边而得到的子图,记作G-S;特别当S={v}时,简记为G- v;
删去边集
图G=<V,E>中删去边集(或弧集)T是指作E-T,且T中的全部边所关联的结点仍在V中而得到的子图,记为G-T,特别当T={e}时,简记作G-e。
边收缩
边e = (u,v)的收缩,记为G○e,是指从图G中把e删除,再令其两个结点重合为一个结点,使其与e的两结点所关联的边相关联。
加入新边
若u,v∈V,而u和v可能相邻,也可能不相邻,在u和v之间加一条边(u,v)称为加入新边,记为G+(u,v),或G∪(u,v)。

定义:给定连通无向图G=<V,E>,S⊆V。若ω(G-S)>ω(G),但对任意TⅭS,均有ω(G-T)=ω(G),则称S是G的一个分离结点集。若图G的分离结点集S={v},则称v是G的割点。

结点连通度定义:连通的非平凡图G,称γ(G)= {|S||S是G的分离结点集}为图G的结点连通度

它表明产生不连通图而需要删去结点的最少数目
对于分离图G,γ(G)=0;对于存在割点的连通图G,γ(G)=1。

边连通度定义:边连通度λ(G)= {|T||T是G的分离边集},它表明产生不连通图而需要删去边的最少数目。

对于分离图G,λ(G)=0;对于图K1,λ(K1)=0;对于存在割边的连通图G,λ(G)=1对于完全图Kn,λ(Kn)=n-1。
桥的定义:删除一条边后,该图不连通了

惠特尼定理:对于任何一个无向图G,有γ(G)≤λ(G)≤(G)。

(结点连通度、边连通度、最小度之间的不等式关系)

判断结点是否是割点的定理

一个连通无向图G中的结点v是割点的

充分必要条件
是存在两个结点u和w,使得连接u和w的每条链都经过v。

判断边是否是割边的定理

连通无向图G中的一条边e是割边的

充分必要条件
是e不包含在图的任何基本圈中

连通强弱定义

(1)在简单有向图G中,若G中任何两个结点间都是可达的,则称G是强连通的;
(2)若任何两个结点间至少是从一个结点可达另一个结点,则称G是单向连通的;
(3)若有向图G不是单向连通的,但其基础图是连通的,则称G是弱连通的。

强连通的判断定理

有向图G是强连通的

充分必要条件
是G中有一回路,它至少通过每个结点一次。

极大子图的定义

令G是简单有向图,对于某种性质而言,

若G中再没有其它包含子图G1的真子图具有这种性质,
则称G1是G的关于该性质的极大子图。

在简单有向图中,具有强连通性质的极大子图,称为强分图;
  • 强分图的定理:简单有向图中的任一个结点恰位于一个强分图中。弧就不一定都是
具有单向连通性质的极大子图,称为单向分图;
  • 单向分图的定理:简单有向图中的每个结点和每条弧至少位于一个单向分图中。
具有弱连通性质的极大子图,称为弱分图。
  • 弱分图的定理:简单有向图中的每个结点和每条弧恰位于一个弱分图中。

定义:如果结点u可达结点v,它们之间可能存在不止一条链(或路)。

在所有这些链(或路)中,最短链(或路)的长度称为
结点u和v之间的距离或短程线或测地线,记作d<u,v>。

图的矩阵表示

邻接矩阵(结点的角度)

定义
性质
(1)若邻接矩阵的元素全为零,则其对应的图是零图;
(2)若邻接矩阵的元素除主对角线元素外全为1,则其对应的图是连通的且为简单完全图。
定理1:设A为简单图G的邻接矩阵,则Al中的i行j列元素aijl等于G中联结vi到vj的长度为l的链(或路)的数目。

可达矩阵

定义

关联矩阵(边的角度)

定义
性质
① 矩阵中每列元素之和为0,从而矩阵所有元素之和为0。
②∑(+1)= |∑(-1)|=|E|,表明有向图中所有结点的入度和等于出度和,并且等于边数。
③第i行中,∑(+1)=d+(vi),|∑(-1)|=d-(vi)。
④平行边所对应的列相同。

布尔矩阵

定义
假设矩阵中的元素是属于布尔代数<B,∧,∨,ˉ,0,1>的B中元素。其中B={0,1},则称该矩阵为布尔矩阵。
布尔矩阵运算

关系矩阵

定义
定理:关系E的传递闭包E+的关系矩阵A+与可达矩阵相同。
求可达矩阵的方法
Warshall算法
  • (1) P←A;

  • (2) k←1;

  • (3) i←1;

  • (4) 若pik=1,对j = 1,2,…,n作pij←pij∨pkj;

  • (5) i←i+1,若i≤n则转(4);

  • (6) k←k+1,若k≤n则转到(3),否则停止。

  • 该算法的关键的一步是(4),它判定若pik=1,将第i行和第k行的各对应元素作布尔和或逻辑加后送到第i行中去。

定义关系矩阵的交运算
  • 于是,由可达矩阵和利用关系交的关系矩阵可求出包含图中任何指定结点的强分图。

    • 结点的强分图定理:

权矩阵

几类经典的图

欧拉图与哈密尔顿图

欧拉图

欧拉图的定义
欧拉圈:图G中的一圈(或回路),若它通G中的每一条边(或弧)恰好一次
欧拉有向(无向)图:具有这种圈(或回路)的图称为欧拉无向(或有向)图。
G有欧拉圈(G是欧拉图)的定理:

给定无向图G,G有欧拉圈
当且仅当
G是连通的,且G中每个结点都是偶度结点。

半欧拉图的定义
图G中的一条链(或路),若它通过G中的每条边(或弧)恰好一次,则称该链(或路)为欧拉链(或路)。
欧拉链的定理:给定连通无向图G=<V,E>,u,v∈V且u≠v,u与v间存在欧拉链当且仅当G中仅有u和v为奇度结点。
定理1:给定弱连通有向图G,G有欧拉回路当且仅当G中的每个结点的入度等于出度。
定理2:给定弱连通有向图G=<V,E>,u,v∈V且u≠v,u与v存在欧拉路当且仅当G中唯有u和v的入度不等于出度,且u的入度比其出度大于1和v的出度比其入度大于1(或者反之)。
欧拉图就是要遍历所有边

哈密尔顿图

定义
哈密尔顿图的定义
  • 图G中的一圈(或回路),若它通过G中每个结点恰好一次,则该圈(或回路)称为哈密尔顿圈(或回路),具有哈密尔顿圈(或回路)的图称为哈密尔顿无向(或有向)图。
半哈密尔顿图的定义
  • 图G中的一条链(或路),若它通过G中的每个结点恰好一次,则该链(或路)称为哈密尔顿链(或路)。具有哈密尔顿链的图叫做半哈密尔顿图
哈密尔顿图的充分条件

(充分条件就是满足的时可以判断是,
不满足的时候不能判断否)

1.设G=<V,E>是|V|=n≥3阶简单图。若∀u,v∈V有d(u)+d(v)≥n-1,则G中存在一条哈密尔顿链。
2.设G=<V,E>是|V|=n≥3阶简单图。若∀u,v∈V有d(u)+d(v)≥n,则G是哈密尔顿图。
3.给定简单图G=<V,E>,若|V|≥3,δ≥|V|/2,则G是哈密尔顿图。
引理
  • 1.给定连通图G=<V,E>,|V|=n≥3。若u,v∈V,u与v不邻接且d(u)+d(v)≥n,则G是哈密尔顿图当且仅当 G+[u,v]是哈密尔顿图。

  • 定理:4.简单连通无向图G是哈密尔顿图当且仅当 C(G)是哈密尔顿图

    • 推论:给定简单无向图G=<V,E>,|V|≥3。若C(G)是完全图,则图G是哈尔密顿图。
5.给定n阶强连通图G=<V,E>。若对任意v∈V,有d+(v)+d-(v)≥n,则G有哈密尔顿回路。
哈密尔顿图的必要条件

(必要条件是用来破坏的
条件满足的时候不能说明是
不满足的时候能说明否)

若连通图G=<V,E>是哈密尔顿图,S是V的任意真子集,则ω(G-S)≤|S|。

二部图和平面图

二部图

定义
给定简单无向图G=<V,E>,且V=V1∪V2,V1∩V2=∅。若V1和V2的诱导子图和都是零图,则称G是二部图或偶图,并将二部图记作G=<V1,E,V2>,并称V1,V2是V的划分。
完全二部图:在一个二部图G=<V1,E,V2>中,若|V1| = m,|V2| = n,且对任意的u∈V1,v∈V2均有[u,v]∈E,则称G为完全二部图,记为Km,n。
判断是否是二部图的定理
简单图G为二部图当且仅当G中所有基本圈的长度为偶数。
匹配(对集)的定义
给定简单无向图G=<V,E>,若M⊆E且M中任意两条边都是不邻接的,则子集M称为G的一个匹配或对集,并把M中的边所关联的两个结点称为在M下是匹配的。
完全匹配:令M是G的一个匹配,若结点V与M中的边关联,则称v是M—饱和的;否则,称v是M—不饱和的;若G中的每个结点都是M—饱和的,则称M是完全匹配。如果G中没有匹配M1,使|M1|>|M|,则称M是最大匹配。
交错圈和交错链的定义
令M是图G=<V,E>中的一个匹配。若存在一个链,它是由分别由E-M和M中的边交替构成,则称该链是G中的M—交错链;若M—交错链的始结点和终结点都是M—不饱和的,则称该链为M—增广链;特别地,若M—交错链的始结点也是它的终结点而形成圈,则称该圈为M—交错圈。
最大匹配的充要条件
引理:设M1和M2是图G中的两个匹配,则在<M1⊕M2>中,每个分图或是交错链,或是交错圈
定理:图G的一个匹配M是个最大匹配当且仅当G中不含有M—增广链。
每个结点都是M—饱和的充要条件
定理:给定二部图G=<V1,E,V2>,G中存在使V1中每个结点饱和的匹配

当且仅当
对任意S⊆V1有 |N(S)|≥|S| 其中N(S)表示与S中结点邻接的所有结点集合。

  • 推论:若G=<V1,E,V2>是二部图,且对于任意v∈V1或V2有d(v)=k>0,则G有一个完全匹配。

平面图与着色问题

平面图
平面图的定义
  • 一个无向图G=<V,E>,如果能把它画在平面上,且除V中的结点外,任意两条边均不相交,则称该图G为平面图。
平面图判断的直观方法
  • (1) 对于有圈的图找出一个长度尽可能大的且边不相交的基本圈。

  • (2) 将图中那些相交于非结点的边,适当放置在已选定的基本圈内侧或外侧,若能避免除结点之外边的相交,则该图是平面图;否则,便是非平面图。

图同胚的定义
  • 若图G2可由图G1中的一些边上适当插入或涂抹度为2的有限个结点后而得到,则称G1与G2同胚。
是否为平面图的判定定理
  • 一个图G是平面图当且仅当G中不含同胚于K3,3或K5的子图,或G不含由边收缩成K3,3或K5的子图。
面的相关定义
  • 面的定义

    • 设G为一平面图,若由G的一条或多条边所界定的区域内部不含图G的结点和边,这样的区域称为G的一个面,记为f。
  • 面的度定义

    • 包围这个区域的各条边所构成的圈,称为该面f的边界,其圈的长度,称为该面f的度,记为d(f)。
  • 有时把平面图G的外部的无限区域当作一个面,称为无限面或外部面,其余的面称为有限面或内部面。

  • 为强调平面图G中含有面这个元素,今后把平面图表示为G=<V,E,F>,其中F是G中所有面的集合。

面的度和边的关系
著名的欧拉定理
  • (欧拉定理) 设G=<V,E,F>是连通平面图,则|V|-|E|+|F|=2。
    图G=<V,E,F>是有k个连通子图,则|V|-|E|+|F|=k+1

  • 边和结点的关系:推论: 给定连通简单平面图G=<V,E,F>。若|V|≥3,则|E|≤3|V|-6。

  • 推论2:给定连通简单平面图G=<V,E,F>。若对于每个面f ∈F,有d(f )≥4,则|E|≤2|V|-4。

  • 推论3:完全图Kn是平面图当且仅当n≤4。

  • 推论4:完全二部图Km,n是平面图当且仅当 m≤2或n≤2。

着色问题
对偶图
  • 对偶图的定义

    • 给定平面图G=<V,E,F>,且f1,f2,…,fn∈F。若有图G*=<V*,E*>满足下列条件:

      • (1) 对于任意fi∈F内部有且仅有一个结点vi∈V

      • (2) 对于G中面fi和面fj的公共边ek有且仅有一条边ek* ∈ E*,使得ek* = [v i*,vj*]且ek*与ek相交;

      • (3) 当且仅当ek只是一个面fi的边界时,vi存在一个环ek且ek*与ek相交

      • 称图G*是图G的对偶图

  • 对偶图的性质

  • 自对偶图的定义

    • 若图G的对偶图G*同构于G,则称G是自对偶图。
  • 定理:若平面图G=<V,E>是自对偶图,则|E|=2(|V|-1)。

  • 对于地图的着色问题,可以化为一种等价的对于平面图的结点的着色问题。

着色
  • 着色的定义

    • 平面图G=<V,E>的着色α是从结点集V到色集C={c1,c2,…,cn}上一个映射,使对任意边[vi,vj]∈E均有α(vi)≠α(vj),即对G的每个结点指派一种颜色,使得相邻结点都有不同的颜色。
  • 色数的定义:需要的最少颜色数称为G的着色数,记为χ(G)。

  • 五色定理:对于任何简单平面图G=<V,E>,均有χ(G)≤5。//老版

    • 定理:任何地图M,M是五着色的,即χ(M)≤5。
  • 定理 (四色定理)对于任何平面图G,有χ(G)≤4。
    相应地有下面的定理。
    定理 对于任何地图M,M是四着色的,即χ(M)≤4。
    现代证明

树与生成树

无向树
相关定义
  • 树:一个无圈的连通图

  • 树叶或悬挂结点:树中度数为1的结点

  • 内点或分枝:度数大于1的结点

  • 叶边或悬挂边:叶或悬挂结点所关联的边

  • 森林:若图中的每个连通分图是树,则称该图为森林。

定理:树T中任两个结点间恰有一条链。
树的判定定理
  • 1.若图G中每对结点间有且仅有一条链,则G为树。

  • 2…给定连通图G=<V,E>,若|E|=|V|-1,则G是树。

  • 3.给定图G=<V,E>,|E|=|V|-1且G中无圈,则G是树。

  • 4.图G是树当且仅当G是最小连通的。

    • 给定连通图G=<V,E>,若对任意e∈E,均使G-e不连通,则称连通图G是最小连通的。
  • 树的等价定义:
    ① G是连通且无圈
    ② G是连通且|E|=|V|-1
    ③ G是无圈且|E|=|V|-1
    ④ G中每对结点间恰有一条链
    ⑤ G是最小连通图

树中边和结点的关系定理;具有n个结点的树中有n-1条边,即树T=<V,E>中,|E|=|V|-1。
叶(悬挂结点)定理:给定树T=<V,E>,若|V|≥2,则T中至少存在两个悬挂结点。
生成树
相关定义
  • 生成树:给定图G=<V,E>。若G的生成子图T是树,则称T是G的生成树。

  • 枝:T中的边称为枝

  • 弦:是G中的边但不为T中的边称为弦。

判断一个图是否有生成图定理:图G=<V,E>有生成树T=<VT,ET>当且仅当G是连通的。
定理1:若T是图G的一棵生成树,e=[u,v]是弦,则存在惟一的由e和T中某些边构成的基本圈C。若f是C上与e不同的边且由e替换 f而得到图T1,则T1也是G的一棵生成树。
定理2:设T1和T2是图G的两棵生成树。若f是T1的边但不为T2的边。则存在一条是T2但不为T1的边e,使得用e代替T1中的一条边而得到图G的一棵生成树T3。
加权生成树
  • 设G=<V,E,W>是加权的连通图,对任意边e∈E,其权w(e)≥0。令T=<VT,ET,WT>是G的一棵加权生成树,其所有枝上的权的总和 ,称为树T的权,记为w(T)。
最小生成树的定义
  • 给定连通加权图G=<V,E,W>,T0=<V,ET0,WT0>是G的加权生成树,w(T0)为T0的权。若对G的任意加权生成树T均有w(T0)≤w(T),则称T0是G的最小生成树。
生成最小树的方法(缩圈法)
最短链的定义
最短通路的算法
  • (1)先从起始点开始,以到各个邻接点的权重给邻接点编号

  • (2)在编号中找到最小的编号,接着求到该编号的邻接点的总距离

  • (3)该总距离和上一个点不经过该点直接到下一个点的距离进行比较,如果前者小,对下一个点的距离的值进行覆盖

  • (4)接着在新的邻接点中找到最小的值,接着重复(2)的操作

  • (5)当找到终结点的时候,从中找到最小的值就是最短的通路

根树及其运用

(根树)有向树
有向树的定义:如果一个有向图的基础图是一棵树,则该有向图称为有向树。
根树的定义:给定一个有向树,若只有一个结点的入度是0,其余结点的入度都是1,则称该树为有根树。
相关定义
  • 根或根结点:入度为0的结点

  • 叶或叶结点:出度为0的结点

  • 分枝结点或内结点:出度不为0的结点。

  • 结点的级:在有根树中,从根到某个结点的路长即该路中的弧数。

    • 结点的级等于根到该结点的距离
  • 树高:结点级最高的者

有序树的定义:在一棵有根树中,在每一级的结点都指定某种次序,称树为有序树
利用家族谱来表示结点之间的关系
  • 若从u到v有一条弧或说u与v是邻接的,则结点v称为结点u的“儿子”,或称u是v的“父亲”;

  • 若从u到w有一条路,称u是w的“祖先”,或称w是u的“子孙”,同一个分枝结点的儿子称为“兄弟”。

叉树
  • 在有根树中,若每一个结点的出度都小于或等于m,则称该树为m叉树。
    若每一个结点的出度恰好等于m或等于0,则称这种树为完全m叉树。
    若所有的叶结点的级相同,则称正则m叉树。

  • 在m叉树中,如果对任何结点的m个(或少于m个)儿子都分别指定好m个不同的确定位置,则称该树为位置叉树。

  • 完全叉树的定理: 设有完全m叉树,其叶结点数为t,分枝结点数为i,则(m-1)i= t-1。

根树的运用
哈弗曼编码树
  • 定理:任何一个前缀码都对应一棵位置二叉树的0-1串表示,即哈夫曼编码对应一棵哈夫曼编码树。
任何一棵有序树都可表示成二叉树;算法
  • (1) 除最左边的分枝结点外,删去所有从每一个结点长出的分枝。在同一级中,兄弟结点之间用从左到右的弧连接,

  • (2) 选取直接位于给定结点下面的结点作为左儿子,与给定结点位于同一水平线上且紧靠它的右边结点作为右儿子

最优树(二叉树的重要运用之一)
  • 加权二叉树的定义

    • 给定一组数w1,w2,…,wn。令一棵二叉树有n个叶结点,并对它们分别指派w1,w2,…,wn作为权,则该二叉树称为加权二叉树。
  • 二叉树权的定义

  • 最优树的定义

    • 二叉树权的值为最小的二叉树
  • 最优树的定理

    • 设T为加权w1,w2,…,wn且w1≤w2≤…≤wn的最优树,则
      (1) 加权w1和w2的叶结点vw1和vw2是兄弟。

    • (2) 以叶结点vw1和vw2为儿子的分枝结点,它是所有分枝结点的级最高者。

  • 定理

    • 设T为加权w1,w2,…,wn且w1≤w2≤…≤wn的最优树,若将以加权w1和w2的叶结点为儿子的分枝结点改为加权w1+w2的叶结点而得到一棵新树T1,则T1是最优树。

      • 求最优树的算法

对编程有着不可磨灭影响——离散数学——图论相关推荐

  1. 2021-06-22 离散数学图论复习笔记

    离散数学图论复习笔记 仅记了自己不太熟悉容易弄混的概念,不懂的可以回到知乎连接查看. 一.图的类型 无序对--(a,b),AB之间的线 无序积--A&B,AB之间线的集合 有序对--<a ...

  2. 离散数学图论旅行规划问题_2020年MathorCup高校数学建模挑战赛——C 题 仓内拣货优化问题...

    下面的链接是精华版思路,亮点是对第六问的探讨. 高度概括一下:第一问曼哈顿,第二问用免疫,三问增加任务单,四问增加拣货员,五问改变复核台,六问亮点来探讨~ 有点皮 MathorCup C题 仓内拣货优 ...

  3. 离散数学图论旅行规划问题_《图论及其应用》(一)

    点击返回目录 一. 定义 1.1 图的基本概念 图或有序对或序偶(P1).有限图/平凡图/非平凡图/空图(P1).顶点数或阶数/边数/重数/重边/环(P1).简单图/复合图(P1).相邻(P2).相关 ...

  4. 离散数学-图论知识总结(修改版)

    文章目录 图论 基本概念 矩阵 邻接矩阵 可达性矩阵 完全关联矩阵 矩阵与图连通性的关系: 特殊图 无向欧拉图 定义 判定定理 有向欧拉图 定义 定理 哈密尔顿图 定义 必要条件 充分条件 平面图 定 ...

  5. 离散数学图论在普通电路分析中的应用

    本文用来记录一篇普通的学校期末小论文(节选),可能存在部分用词不当.限定不准确.内容有误等的错误,欢迎批评指正,共同学习! 其实离散数学在电路中也是能有所应用的.就像图可以运用在对电路的分析中.例如对 ...

  6. java事务过大影响系统性能吗_Java编程性能优化-影响性能的因素你都知道吗?

    1.总是听说系统性能咋样,那我们为啥要性能调优?有啥意思? 1.1肺腑之言,唠叨几句感慨 以前写代码,一般都是跟着感觉走,业务实现出来就行了,至少客户端可以使用就可以.不管他三七二十一,总之我搞完了. ...

  7. 离散数学图论经典问题之握手定理

    知识点:握手定理 在无向图中G=<V,E>,则所有的节点的度数总和等于边数的2倍: 在有向图G=<V.E>中,所有节点的入度之和等于所有节点的出度之和,所有节点的度数的总和等于 ...

  8. 离散数学图论期末复习

    图论 参考Karthus77 第七章 图 可图化:奇数点的个数为偶数个 可简单图化:通过定理化简证明 握手定理:度数和等于2倍的边数 奇数度点的个数为偶数个 简单联通图各点的度数范围[0,n-1] 要 ...

  9. 离散数学 --- 图论基础 --- 无向图的连通性和有向图的连通性

    第一部分 ---- 无向图的连通性 1.完全图:任意两个结点之间都有边 2.零图:所有结点都是孤立结点 3.平凡图:仅有一个结点的图 1.等价类:R是集合上的一个等价关系,选定集合中的任意一个元素a, ...

最新文章

  1. Boost:iostream客户端的测试程序
  2. 微服务很香--麻辣味,但要慢慢消化
  3. 让代码不运行的快捷键html5,使用 vscode 实现写代码双手不用离开键盘
  4. Android Drawable之getIntrinsicWidth()和getIntrinsicHeight()
  5. c# 如何抓微信把柄_抓住把柄表情包 - 抓住把柄微信表情包 - 抓住把柄QQ表情包 - 发表情 fabiaoqing.com...
  6. uchome数据字典
  7. 那些简历造假拿 Offer 的程序员,后来都怎样了?
  8. ios开发者联系方式
  9. Sitecore 8.2 防火墙规则的权威指南
  10. OPA 20 - deliberately generate an error
  11. 动态规划的特点及其应用[安徽 张辰]
  12. flux 中 filter 的使用和原理
  13. jquery事件委托_jQuery事件委托
  14. 液压管路渗漏图像识别检测方法研究
  15. 大数据离线流程(小练习)
  16. c# 串口通信 DataReceived 事件触发方法的使用
  17. 【CCPC-Wannafly Winter Camp Day4 (Div1) H】命命命运(概率DP)
  18. Facebook创始人达斯汀:最年轻的亿万富翁
  19. php将json转化成数组,PHP怎么把JSON数据转换成数组?
  20. 图论 最大团,最大独立集

热门文章

  1. 画质增强概述-1-定义
  2. 计算机运行命令如何关闭应用程序,如何禁止电脑中某些程序的运行
  3. 如何快速实现增长App用户量?
  4. 支持生僻字且自动识别utf-8编码的php汉字转拼音类,支持生僻字且自动识别utf-8编码的php汉字转拼音类_PHP...
  5. python窗口显示文本tk_python-Tkinter文本小部件设置选项卡
  6. Elasticsearch:在搜索引擎中如何实现完全匹配(内容精确匹配)查询
  7. OS及Mac开源项目和学习资料【超级全面】
  8. 算法Day8|字符串专题二 剑指 Offer 58 - II. 左旋转字符串,28. 找出字符串中第一个匹配项的下标,459. 重复的子字符串
  9. C源码:通过IP地址查找主机名 findip.c
  10. Python综合基础及机器学习面试题