图论

  • 第一章 图的基本概念
    • 1.1 图和简单图
      • 一.图的定义
      • 二.图的同构
      • 三.完全图 ,偶图 ,补图
      • 四.顶点的度(续), 度序列
      • 五.图的频序列
    • 1.2 子图与图的运算
      • 一. 子图
      • 二. 图的运算
        • 1、图的删点、删边运算
          • (1)、图的删点运算
        • (2)、图的删边运算
        • 2、图的并,交,差运算
    • 1.3 路和连通性
      • 1. 途径、迹、路、圈、距离和直径
      • 2. 图的连通性
    • 1.4 最短路及其算法
      • 一. 赋权图
      • 二. 最短路问题
      • 三. 算法分析
    • 1.5 图的代数表示及特征
      • 一. 邻接矩阵
      • 二. 关联矩阵

第一章 图的基本概念

1.1 图和简单图

一.图的定义

定义1 : 一个图 G 定义为一个有序对(V, E),记为G = (V, E),其中 :
(1)V是一个非空集合,称为顶点集或点集,其元素称为顶点或点;
(2)E是由V中的点组成的无序点对构成的集合,称为边集,其元素称为边,且同一点对在 E 中可出现多次。

符号说明: 图G 的顶点集也记为V(G), 边集也记为E(G)。 图G 的顶点数(或阶数)用符号 n(G) (或 |V(G)| )
边数用符号 m(G)表示。

相关概念:
(1)若边e = uv , 此时称 u 和v 是 e 的端点;
并称 u 和 v 相邻,u (或v)与 e 相关联
若两条边有一个共同的端点,则称这两条边相邻

(2)特殊点、边

 孤立点:不与任何边相关联的点;环:两端点重合的边;重边:连接两个相同顶点的边的条数,叫做边的重数。重数大于1的边称为重边。
名词 解释
平凡图 只有一个点而没有边
简单图 既没有环也没有重边

二.图的同构

定义2 设有两个图G1 = (V1, E1)和G2 = (V2, E2),若在其顶点集合之间存在双射,即存在一一对应的关系,使得边之间有如下的关系:设
图同构的几个必要条件:① 顶点数相同;② 边数相同;③ 度数相等的顶点个数相同。
图不同构充分条件:① 顶点数不相同;② 边数不相同;③ 度数相等的顶点个数不相同。(满足一个即否定)

定义:设 v为 G 的顶点,G 中与 v 为端点的边的条数(环计算2次)称为点 v 的度数,简称为点v的度,记为 dG (v),简记为d(v)

三.完全图 ,偶图 ,补图

完全图任意两点均相邻的简单图称为完全图,在同构意义下,n 阶完全图只有一个,记为Kn。例如K2, K3, K4分别为如下图所示。

具有二分类(X, Y)的偶图(或二部图):是指该图的点集可以分解为两个(非空)子集 X 和 Y ,使得每条边的一个端点在 X 中,另一个端点在Y 中

完全偶图:是指具有二分类(X, Y)的简单偶图,其中 X的每个顶点与 Y 的每个顶点相连,若 |X|=m,|Y|=n,则这样的偶图记为 Km,n

图G 的补图:设 G =(V, E),则图 H =(V,E1\E)称为G 的补图,记为 , 其中集合E1:

图G的`补图`,通俗的来讲就是`完全图 Kn 去除 G 的边集后得到的图 Kn-G`。
在图论里面,一个图G的`补图`:有着跟`G相同的顶点集`,G里面没有形成的边在`补图`里有。

定理1 若n 阶图G是自补的(即 G ≌ G▔) ,则
n = 0, 1(mod 4)

G与G▔的和是n阶完全图,且G和G▔同构,且n阶完全图Kn的边数`n(n-1)/2`是偶数,
G和其补图G▔有同样多的边数,每人一半,都是`n(n-1)/4`。原题得证.

四.顶点的度(续), 度序列

G 中与 v 为端点的边的条数环计算两次)称为点 v 的度数,简称为点v的度,记为 dG (v),简记为 d(v)

定理2 (握手定理)

对任意的有m条边的图 G = (V, E)。有

各点的度数之和恰好为边数的两倍,每个人总的握手次数之和是两倍握手次数

就算是自己和自己握手,自环的边算1,自环顶点的度数是2。

δ(G)最小度
Δ(G)最大度
奇(偶)点: 度数为奇(偶)数的顶点
k-正则图: 简单图,其每个点的度均为 k 。

推论1 任意图中,奇点的个数为偶数
推论2 正则图的阶数和度数不同时为奇数。

度序列: 一个图G的各个点的度d1, d2,…, dn构成的非负整数
组 (d1, d2,…, dn)称为G的度序列 。

正整数k的划分: 是指将k表示为若干正整数的和,或指一个无序正整数组,组中正整数的和是k

图划分: 正整数k的一个划分(d1, d2,…, dn)能成为某简单图的度序列的k的划分.

显然,若正整数 k 有图划分,则k 必须是偶数

定理5 (Havel-Hakimi定理) 设有非负整数组Π = (d1, d2,…, dn),且

是一个偶数,n-1≥d1≥d2≥…≥dn, Π是可图的充要条件为

是可图的。

试判断下列非负整数组Π 是否可图?

解 利用定理5可得下列非负整数组

`和为偶数`,且`最大度5<=6=n-1`
第一步:  d1为5,去掉d1,新整数组为:从d2开始写到d`5+1`均减一,更后面不变
第二步:重新按照从大到小排列,d1 d2 d3 d4 d5 d6
第三步:新的d1为4,去掉d1,新整数组为:从d2开始写到d`4+1`均减一,更后面不变
......

五.图的频序列

定理4 一个简单图G的n个点的度数不能互不相同。

定义: 设n阶图G的各点的度取s个不同的非负整数
d1,d2,…, ds。又设度为di的点有bi个 (i = 1,2,…,s),则
故非整数组(b1,b2,…, bs)是n的一个划分,称为G的频序列(不重复的度数的频数序列)。

定理5 一个n阶图G相和它的补图有相同的频序列。

1.2 子图与图的运算

一. 子图

定义1 设G 和H为两个图,若V(H) ⊆ V(G) , E(H) ⊆ E(G) ,且H中边的重数不超过G中对应边的重数,则称H 是G 的子图. 记为H ⊆ G 。有时又称G是H的母图。

  • G的生成子图是指满足V(H) = V(G)的子图H。即顶点集相同的子图。(拥有G的所有顶点,及其相关的边)
  • 导出子图 : 设V’是V的一个非空子集。以V’为顶点集,以两端点均在V’中的边的全体为边集所组成的子图,称为G的由V’导出的子图,记为G[V’];简称为G的导出子图.(拥有G的部分顶点,及其相关的边)
即`一个子图,点V'是V的子集,点集V'以及这些点相连形成的【边】
(母图里的没有的不算)`。
  • 边导出子图 假设E’是E的非空子集。以E’为边集,以E’中边的端点全体为顶点集所组成的子图称为G的由E’导出的子图,记为G[E’ ];简称为G的边导出子图。
即`一个子图,E'边是E的子集,边集E'以及这些边的所有端点`

定理8 简单图G 中所有不同的生成子图(包括G和空图)的个数是2m个, 其中m为G 的边数。

二. 图的运算

1、图的删点、删边运算

(1)、图的删点运算

V’⊆ V(G),删点运算。记为:G-V'(顶点拿掉,关联的边自然也没了) 如果只删去一个点v,则记为G-v.

(2)、图的删边运算

E’⊆ E(G),删边运算。记为:G-E'(边拿掉,顶点依旧在)
如果只删去一个点e,则记为G-e.

2、图的并,交,差运算

  • 并图G1∪G2 :是指其顶点集为V(G1)∪V(G2),边集为E(G1)∪E(G2) 的G 的一个子图 ;如果G1和G2是不相交的,有时就记其并图为G1+G2。
  • G1-G2 :由G1中去掉G2中的边组成的图
  • 交图G1∩G2 :是指其顶点集为V(G1)∩V(G2),边集为E(G1)∩E(G2) 的G 的一个子图 。
  • 对称差G1△G2 :G1△G2 = (G1∪G2) - (G1∩G2) = (G1-G2)∪(G2-G1)
    G1独有的部分,并上G2独有的部分
  • 定义2 联图
    在不相交的G1和G2的并图G1+G2中,把G1的每个顶点和G2的每个顶点连接起来所得到的图称为G1和G2的联图,记为G1∨G2
  • 定义3 积图
    设G1= (V1, E1),G2 = (V2, E2),对点集V = V1×V2中的任意两个点u = (u1,u2)和v = (v1,v2),当(u1 = v1和 u2 adj v2) 或 (u2 = v2 和 u1 adj v1) 时就把 u 和 v 连接起来所得到的图G称为 G1和G2积图,记为G = G1×G2。其中 ui adj vi 表 ui 和vi邻接.

    定义4、合成图
    u=(u1,u2)与v=(v1,v2),当(u1adjv1)或(u1=v1和u2 adj v2)时,把u与v相连。如此得到的新图称为G1与G2的合成图。记为G=G1[G2]
    定义5、联合
    把G1的一个顶点和G2的一个顶点粘合在一起后得到的新图称为G1与G2的联合。记为:G=G1▪G2

1.3 路和连通性

1. 途径、迹、路、圈、距离和直径

定义 给定图G = (V, E),w = v0e1v1e2…ekvk 是G 中点边交替组成的序列,其中 vi∈V,ei∈E,若w满足 ei 的端点为 vi-1 与 vi,i = 0,1,…, k,则称w为一条从起点 v0 到终点 vk 的长为 k途径(或通道或通路), 简称(v0, vk)途径。

边不重复的途径称为

点不重复的途径称为
 
显然必为迹。 (路的定义条件更严格)
闭途径:起点和终点相同的长为正的途径。
闭迹也称为回路。 圈一定是闭迹。
: 起点和内部顶点(非起点和终点的点)两两不相同
的闭迹。
点u与v的距离:指图中最短 (u, v) 途径的长度,记为 d(u, v)

图G的直径定义为
d(G) = max{ d(u, v) | u, v∈V}

2. 图的连通性

点u与v连通 :指图存在(u, v)路。 连通图: G中任意两个顶点均连通的图。
 
连通分支(分支,支):若H是图G 的连通子图且H不能再扩充为G的任一连通子图,则称H为G的连通分支(极大连通子集)。用ω(G) 记图G 的连通分支数

定理7 若图G是不连通的,则 G- 是连通图。
定理8 一个图是偶图当且仅当它不包含奇圈

1.4 最短路及其算法

一. 赋权图

定义 若图G的每一条边e 都附有一个实数w(e),则G连同它边上的权称为赋权图。实数w(e) 称为e的权。子图H的各边权之和称为子图H 的,记为W(H)
 
 子图的权是子图的各边权之和。(区分:权Wdouble u;连通分支数ω欧米伽

 设Γ是权图G 中的一条路,称Γ 的`各边权之和`为`路Γ的长`。`赋权图中`点 u 到 v 的距离仍定义为点 u 到 v 的最短路的长,仍记为 `d(u,v)`。`赋权图里,距离是最短路的长——————以各边权之和来计算路长`

二. 最短路问题

问题:给定简单权图G = (V, E),并设G 有n个顶点,求G中点u0到其它各点的距离。

(1) 置 l(u0) = 0;对所有v∈V {u0},令 l(v) = ∞; S0 = {u0},i = 0。
(2) 若i = n-1,则停;否则令 Si= V \Si 对每个v∈Si,令 l(v) = min {l(v),l(ui) + w(uiv)}


(4)并用 ui+1记达到最小值的某点。置Si+1= Si∪{ui+1},
i = i+1(表示赋值语句,以后的算法中相同),转(2)。

基本思想
通过Dijkstra计算图G中的最短路径时,需要指定起点u0(即从顶点u0开始计算)。此外,引进两个集合S和S^-。S的作用是`记录已求出最短路径的顶点`(以及相
应的最短路径长度),而S^-则是记录`还未求出最短路径的顶点`(以及该顶点
到起点u0的距离)。初始时,S中只有起点u0;S^-中是除u0之外的顶点,并且S^-中顶点的路径是
”起点u0到该顶点的路径”。然后,`从S^-中找出路径最短的顶点,并将其嫁
入S中(即PPT中第(4)步的Si+1及ui+1的赋值);`接着,更新S^-中的顶点
和顶点对应的路径。 然后,再从S^-中找出路径最短的顶点,并将其嫁入S中
;接着,更新S^-中的顶点和顶点对应的路径。 … 重复该操作,直到遍历完
所有顶点。注:`纳入S集合后,路的距离就从“估计值”变为了“确定值”,后面都是更新
S^-的元素`



参考:Dijkstra算法详细讲解

三. 算法分析

好算法 一个图论算法如果在任何一个具有m条边的n阶图G上施行这个算法所需要的计算步数都可由n和m的一个多项式(例如3n2m)为其上界, 则称该算法是好的.
Dijkstra算法总共需作 n(n-1)/2 次加法n(n-1)/2 次比较, 确定一个点是否属于或不属于S。总计算量大约是5n2/2.因此该算法是一个好算法.

2、最短路算法

顶点标号法

t (an) : 点an的标号值,表示点 a1=a 到an的最短路
Ai ={a1 ,a2 , …, ai }:已经标号的顶点集合。
Ti : a1到ai的最短路上的边集合

1.5 图的代数表示及特征

一. 邻接矩阵

定义:设 n 阶标定图G = (V,E),V = {v1,v2,…, vn},则 G 的邻接矩阵是一个n×n 矩阵A(G) = [ aij] (简记为A),其中若 vi邻接vj,则aij =1;否则aij =0

注: 若aij 取为连接vi与vj 的边的数目, 则称A为推广的邻接矩阵

性质:对称方阵、元素非负1. 简单标定图各行 (列) `元素之和`是该行(列) 对应的`点的度`。|简单图|既没有环也没有重边|2. 矩阵`元素总和`为图的`总度数`,也就是G的`边数的2倍`3. `同一图`的不同形式的`邻接矩阵`是`相似`矩阵4.  G是连通的当且仅当没有G的点的一种标定法使它的邻接矩阵有约化的形式

定理10 令G是一个有推广邻接矩阵A的 p阶标定图,则 Ani行j列元素等于由vi到vj的长度为n的通道的数目

推论 设A为简单图G的邻接矩阵,则A2 的元素 aii(2) 是 vi的度数
 
   A3 的元素 aii(3) 是含 vi 的三角形的数目的两倍
 
   若G是连通的,对于i≠j,vi 与vj 之间的距离是使An 的 aij(n) ≠0 的最小整数 n。

二. 关联矩阵

定义1 无环图G的关联矩阵B(G) = [ bij] (简记为B)是一个 n×m 矩阵,当viej关联时 bij =1否则 bij =0

说明:定义中“无环”的条件可去掉,此时bij = 点vi 与边ej 关联的次数(0, 1, 2(环)).自环是2

|||
|||
|||
|||
|||
|||

电子科技大学研究生图论课程相关推荐

  1. 西电计算机考研历年分数线,西安电子科技大学研究生,西电历年考研分数线?...

    西安电子科技大学研究生院_西安电子科技大学研究生招生信息网_西安... 推荐您搜索:我想报考西电2011年通信专业研究生,麻烦告诉下西电历年初试分数线.另外. 西安电子科技大学本科招生信息网 西安电子 ...

  2. 西电计算机学院2019年复试线,2021西安电子科技大学研究生分数线一览表(含2019 2020历年复试)...

    西安电子科技大学2021年研究生的分数线是2022年研究生入学考试学生非常关心的问题,在选择研究生入学考试的院校和专业时,西安电子科技大学2021年研究生的分数线是一个非常重要的问题.为方便您查询,小 ...

  3. 计算机专业常用图论,计算机专业研究生图论课程探讨.doc

    计算机专业研究生图论课程探讨 计算机专业研究生图论课程探讨 摘要:本文根据计算机专业硕士研究生的具体情况结合图论课程自身的特点,以作者多年讲授这门课程的经验,立足于同学们以后的学习和工作,对图论课程的 ...

  4. 电子科技大学计算机学术研究生,征稿 | 第四届电子科技大学研究生学术年会征稿启事...

    原标题:征稿 | 第四届电子科技大学研究生学术年会征稿启事 尊敬的各高校研究生: 你们好! 第四届电子科技大学研究生学术年会将于 2020年5月举办.年会由电子科技大学研究生院主办.本届年会以 &qu ...

  5. 2021电子科大计算机复试线,2021电子科技大学研究生复试分数线

    2021电子科技大学研究生复试分数线已经公布,包含学术学位.专业学位.强军计划.退役大学生士兵专项计划.少数民族高层次骨干人才计划等复试分数线,供大家参考,如意了在此祝广大考研学子都能顺利上岸. 一. ...

  6. 【西安电子科技大学区块链课程成功结课】GBCAX

    gbcax链交所 [西安电子科技大学区块链课程成功结课] 西安电子科技大学区块链课程日前成功结课.据悉,西电于今年3月31日开课<区块链技术原理与开发实战>,历经2个月.8次讲授.32个学 ...

  7. 电子科技大学研究生计算机与科学,2019年电子科技大学计算机科学与工程学院考研复试分数线...

    据电子科技大学研究生院消息,2019年电子科技大学计算机科学与工程学院考研复试分数线及调剂信息已出,详情如下:专业第一单元第二单元第三单元第四单元总分调剂调剂开放时间调剂结束时间公开招考人数 0812 ...

  8. 桂林电子科技大学计算机学院老师,李凤英_桂林电子科技大学研究生导师信息...

    科研工作 : 在研项目:[1] 国家自然科学基金项目:基于抽象和符号技术的并发软件验证研究[2] 广西自然科学基金项目:赋时Petri网的符号分析技术及其应用研究[2] 广西可信软件重点实验室项目:基 ...

  9. 电子科技大学计算机学院录取名单,电子科技大学研究生拟录取名单2021整理汇总(各学院)...

    以下是整理的各学院汇总 2021电子科技大学各学院研究生拟录取名单整理汇总 拟录取名单详见各学院官网通知公告(注:含调剂录取名单). 信息与通信工程学院: https://www.sice.uestc ...

  10. 电子科技大学研究生计算机与科学,川大和电子科技大学那个计算机考研专业好?...

    电子科大的电子和通信很好,但是计算机就比不上川大计算机了. 川大计算机有计算机应用国家重点学科.而电子科大计算机目前还没有国重学科.而国家重点学科,是对学科水平最权威的认证. 川大还有个计算机方面还有 ...

最新文章

  1. 201671010417 金振兴 词频统计软件项目报告
  2. tensorflow从入门到精通100讲(六)-在TensorFlow Serving/Docker中做keras 模型部署
  3. 【若依(ruoyi)】Swagger 上传接口
  4. Javascript JSON 序列化和反序列化
  5. 前置通知(Before Advice)
  6. 2.Strings and Console Output(字符串与输出)
  7. CentOS 7 MySql 解压版安装配置
  8. 30人团队的数据架构师:谈谈数据湖这个风口吧,你们说的都没价值
  9. 可输入可选择的input
  10. std::string与output-operator的兼容问题
  11. PHP如何启动scrapy,php教程博客
  12. C#中的overload,overwrite,override的语义区别
  13. CUDA编程之CMAKE
  14. 手机蓝牙连接51单片机自动开门
  15. 常见的web前端编程软件
  16. 计算机视觉与医疗PPT,图像理解与计算机视觉经典案例.ppt
  17. VPS搭建zotero自动同步的webdav服务
  18. 记录踩过的坑-WPS文字
  19. ps4仁王服务器不稳定,原来《仁王》放弃独占PS4早有预兆 未来将是跨平台大潮...
  20. 串的子串(模式串)匹配算法

热门文章

  1. element-ui表单中的文本域 调整高度
  2. spring boot全局日期格式化配置
  3. 北京新东方全部托福资料
  4. PHP excel模板
  5. java使用Jco连接SAP
  6. 创新声卡KX驱动调试设置及效果器使用详解
  7. java股票雪球数据接口_国内股票数据接口API(5分钟K线、日线)
  8. imx6ul pinctrl 驱动浅析
  9. 福布斯发布区块链50强 这5家中国公司上榜
  10. 普林斯顿微积分读本篇十二:洛必达法则