无圈图:一个图的任何子图都不是圈

连通无圈图

  • 树删除的任意一条边都会变成非连通图产品
  • 对树中给定的两个结点的x,y,树中存在唯一一条XY路,因此此路为测地线
  • 若树有Ñ个结点,对条边,则P = N-1,因此,树是最小连通的(满足该关系的不一定是树,树一定满足该关系)
  • 设S为n个正整数组成的序列d1,d2,d3 ... dn,其中,d1 d2 d3 ... dn,并且d1 + d2 + d3 + ... + dn = 2(n-1),则存在一个树,度序列为小号
  • 判断非同构树:度序列,最长路的长度,对给定的唯一度数相对应结点间的最短路的长度
  • 非平凡树的叶子树有下面公式

的树高度:根下面的行数

森林:所有连通分量都是树

摹的生成树:连通图摹的某个生成子图为一棵树

权重:每条边上的数字

K-差结点:设v是图ģ的生成树Ť的结点,若其度数满足degG(ⅴ)-degT(V)= K,则称结点v为K-差结点,整数ķ称为结点v的差额,若K = 0,则称v为度保持结点

  • 设图ģ是含Ñ个结点,Q条边的连通图,则图G ^生成树的所有结点的差额和为2Q-2(N-1)= 2(Q-N + 1)

最小生成树:代价最小的生成树

  • 贪心算法:算法每一步要求选出可以获得的最好的(权重最小的)边,并且要保证加入此边后不会形成圈
  • 采用Kruskal算法:算法该使用了一种边导出子图产品。的特殊类型子图设集合阿为图ģ的边集的子集,称图ħ为集合甲的边导出子图,当图ħ满足:电子(H)= A并且V(H)= {v:v与集合A内的边相关联},记作<A>
  1. S = 
  2. 在已排好序的表L中的下一条边e,若e S且导出子图<S   {e}>是无圈图,则令S = S   {e}(按照边权重大小加入顺序)
  3. 若| S | = n-1,算法停止,输出集合S.否则,转第二步,继续遍历表L.
  • Prim算法(广度优先搜索)
  1. 选出结点v,令V(T)= {v},E(T)= 
  2. 在所有u V(T)的结点中,若连接结点u和w的边e = uw是最小权重边,其中w V(T)则令V(T)= V(T)  {u},                 E(T)= E(T)  {uw}(算法每一步得到的都是树)
  3. 若| E(T)| = n-1,算法终止,输出E(T)。否则,转步骤2,向树种增加新的结点

二分图:图ģ的结点集V(G)可以分为两个非空子集V1和V2,并且满足图ģ的边XY关联的两个结点的x,y分别属于这两个子集,则图ģ为二分图结。点V1,V2时图ģ的部分或者说是结点的划分集。

如果给不同的结点集着上不同的颜色,则二分图产品中任意两相邻接的两个结点都有着黑白两种不同的颜色。

所有的树都是二分图

  • 对于任何的二分图,颜色两个集合的基数的英文个不变量
  1. | V1 | = | V2 | 图ģ的英文平衡
  2. | V1 | - | V2 | = 1图G是准平衡
  3. | V1 | - | V2 |  2图G是偏斜
  • 对于路光合速率,如果Ñ是偶数,光合速率是平衡的。如果Ñ是奇数,光合速率是准平衡的
  • 判断图ģ是否是二分图(A,B分别表示相反的符号)
  1. 取任一结点,标记为一个
  2. 所有与一个邻接的结点标记为b
  3. 对任意已标记结点V,将v所有邻接且未标记的结点标记为与v相反的符号
  4. 重复步骤3,知道不存在与已标记结点向邻接的未标记结点
  5. 如果图中还有未标记结点,那么,这些结点一定是在一个新的连通分量中,再选择其中一个结点标记为一个,转到步骤3
  6. 如果得到的图中,所有邻接的结点都标记为不同的标号,那么图ģ就是二分图,否则ģ不是二分图
  • 图ģ是二分图当且仅当图ģ不含奇圈(含奇数个结点的圈)

二分图在涉及匹配的问题中很重要

图的匹配M是由一些边组成的集合,其中的任何两个边都不关联

完全匹配:设X,Y是图G的两个部分,若X中的每个结点都关联于匹配M中的一条边,称M为从X到ý的一个完全匹配(这时M未必是Y到X的完全匹配)

完美匹配:若M是从X到Y,也是从Y到X的完全匹配,则M为完美匹配,这要求| X | = | Y |,即图G是平衡的

最大匹配:匹配M在所有匹配中基数最大(最大就业率问题

极大匹配:不存在更大的匹配M‘包含M。极大匹配是指不能通过增加边来扩大匹配

图G的M-交错路:是由在M中的边和不在M中的边交替出现构成的

M-匹配:若结点v与M中的某条边相关联,称v是M-匹配的,否则称为M-不匹配

M增广路:连接连个M-不匹配结点的交错路

  • M增广路不必包含M的所有边;一个图可以有多条M-增广路;M-增广路开始并终止于不在M中的边;
  • Gerge匹配定理:图G的匹配M是最大匹配当且仅当G中没有M-增广路

完美匹配M:其中每个结点都是M-匹配的。完美匹配的结点数一定为偶数。

  • Hall匹配定理(二分图中的完全匹配):二分图G的两个部分X,Y,若存在从X到Y的完全匹配,当且仅当对任意结点子集SX,都有| N(S) |  | S |。 (N(S)表示所有与S中的结点相邻接的结点集的并集)
  • Hall婚配定理(二分图中的完美匹配):二分图G的两个部分X,Y,满足|X| = |Y|。图G存在完美匹配,当且仅当对任意结点子集SX,都有| N(S) |  | S |。
  • 正则二分图G一定平衡,即X,Y有相同的结点数。
  • 若二分图是正则图,则一定存在完美匹配

相异代表系问题可以用完全匹配解决。

图论(二) 树与二分图相关推荐

  1. 现代图论笔记(二)树与二分图

    写在前面 这次介绍一些树和二分图的定义和主要性质, 以及这两种结构中常用的算法, 包括二分图的判定, 最小生成树的寻找等. 好久才更新, 只能说自己的代码能力还有欠缺, 一些算法知道思路但就是写不出来 ...

  2. 数据结构实验二 树和二叉树的实现

    广州大学学生实验报告 开课实验室:计算机科学与工程实验(电子楼418A)     2019年5月13日 学院 计算机科学与教育软件学院 年级.专业.班 计算机科学与技术172班 姓名 学号 17061 ...

  3. 20162303 实验二 树

    北京电子科技学院(BESTI) 实 验 报 告 课程:程序设计与数据结构 班级: 1623 姓名: 石亚鑫 学号:20162303 成绩: 2分 指导教师:娄嘉鹏 王志强 实验日期:10月23日 实验 ...

  4. SDUT 2142 数据结构实验之图论二:基于邻接表的广度优先搜索遍历

    数据结构实验之图论二:基于邻接表的广度优先搜索遍历 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Problem Descript ...

  5. 2017-2018-1 20162316刘诚昊 实验二 树

    20162316刘诚昊 2017-2018-2 <Java程序设计>第二次实验 树 实验链接: 实验二 树-1-实现二叉树 实验二 树-2-中序先序序列构造二叉树 实验二 树-3-决策树 ...

  6. java 二叉树 红黑树_常见数据结构(二)-树(二叉树,红黑树,B树)

    常见数据结构(二)-树(二叉树,红黑树,B树) 标签: algorithms [TOC] 本文介绍数据结构中几种常见的树:二分查找树,2-3树,红黑树,B树 写在前面 本文所有图片均截图自course ...

  7. 2022 RoboCom 世界机器人开发者大赛-本科组(省赛)-- 第五题 树与二分图 (已完结)

    其它题目 题目 RC-u5 树与二分图 设 G=(V,E) 是一个无向图,如果顶点集合 V 可分割为两个互不相交的子集 (A,B),并且每条边 (i,j)∈E 的两个端点 i 和 j 分别属于这两个不 ...

  8. 数据结构-实验二  树和二叉树的实现

     广州大学学生实验报告 开课实验室:计算机科学与工程实验(电子楼417)     2018年05月16日 学院 计算机科学与教育软件学院 年级.专业.班 网络161 姓名 卟咚君 学号 1606100 ...

  9. C#,图论与图算法,二分图(Bipartite Graph)的霍普克罗夫特-卡普(Hopcroft Karp)最大匹配算法与源程序

    二分图Bipartite graph 有没有可能通过数学过程找到你的灵魂伴侣?大概让我们一起探索吧! 假设有两组人注册了约会服务.在他们注册后,会向他们展示另一组人的图像并给出他们的描述.他们被要求选 ...

最新文章

  1. 自定义cacti插件监控jvm
  2. CentOS设置服务开机启动的方法
  3. Android之上下文context
  4. 使用Dagger 2在GWT中进行依赖注入
  5. 安卓“新皇”来了!华为Mate 40确定10月22日发布
  6. backbone, AngularJS, EmberJS 简单比较
  7. 文件备份软件 FreeFileSync
  8. 关于pr(premier)2020不能使用beat edit的解决方法
  9. Java 8:那些Java8的常见写法
  10. 电话聊天狂人 (25分)
  11. 润乾报表V4在weblogic下部署找不到授权文件的解决方法
  12. [音乐] 逆转裁判1~4 追求 链接
  13. LeetCode #780 - Reaching Points
  14. Ruoyi若依前后端分离框架【若依登录详细过程】
  15. JAVA毕业设计高校人事管理系统计算机源码+lw文档+系统+调试部署+数据库
  16. 数据结构与算法(1)--二叉树
  17. 我将进化成一条狗(5)——VR和AR
  18. 笔记本win10系统连接wifi显示无Internet安全如何解决
  19. 克鲁斯卡尔算法与普里姆算法详解
  20. Android代码混淆技术

热门文章

  1. 如何选择合适的语音聊天app开发方式实现语音连麦
  2. 自媒体多平台助手——融媒宝
  3. 教育部2012年计算机评估,教育部2012年度学科评估结果(0812 计算机科学与技术).doc...
  4. 随笔记录-spring.factories
  5. c语言线程中sleep,关于c ++:减慢线程的最佳方法? 使用Sleep()可以吗?
  6. 吃苹果小游戏(Python)
  7. 云计算提供商锁定的影响以及解决方案
  8. 每周分享第 55 期
  9. iPhone如何登陆QQ邮箱20230208
  10. 离散数学 | 图论 | 欧拉图 | 哈密顿图 | 割点 | 桥(欧拉图和哈密顿图有没有割点和桥?)