问题汇总

  • 图的相关概念
  • 最大团问题
  • 最大独立集问题
  • 图着色问题
  • SAT
  • 顶点覆盖
  • set cover(集合覆盖)

图的相关概念

强连通图:很多人搞混,这个是在有向图框架下提出的,即每两个顶点均有边(vi,vj),(vj,vi)(v_i,v_j),(v_j,v_i)(vi​,vj​),(vj​,vi​)。例如:

强连通分量:其也叫做极大强连通子图,向该图中添加任意顶点都会导致其失去强连通的属性,则称其为G的强连通分量。
例如对于有向图:

其有很多强连通子图,例如虚线内的:

但是最大的那个强连通子图不是上面虚线的,而是下面虚线的:

这就叫强连通分量。不过要注意的是,强连通分量也不是唯一的,例如:G′=({4},ϕ)G'=(\{4\},\phi)G′=({4},ϕ)也是强连通分量。总之,牢牢抓住:添加任何顶点进来都会使其失去强连通的属性这个特点即可。

偶图(二分图、二部图):若无向图G=<V,E>G = <V,E>G=<V,E>的结点集VVV能够划分为两个子集V1,V2V_1,V_2V1​,V2​,满足V1∩V2=ϕ,V1∪V2=VV_1∩V_2= \phi ,V_1∪V_2 = VV1​∩V2​=ϕ,V1​∪V2​=V,使得GGG中任意一条边的两个端点,一个属于V1V_1V1​,另一个属于V2V_2V2​,则称GGG为偶图(Bipartite Graph)或二分图(Bigraph)。V1V_1V1​和V2V_2V2​称为互补结点子集,偶图也可记为G=<V1,E,V2>G = <V1,E,V2>G=<V1,E,V2>。

bipartite:有两个部分的。

一个二部图举例如下:

但是我们一般是这样画成直的。如下:

这就是我们熟悉的,常见的二部图了。

最大团问题

就是完全子图,最大团就是最大完全子图。
完全子图:给定无向图G=(V,E)。如果U⊆\subseteq⊆V,且对任意u,v∈\in∈U 有(u,v) ∈\in∈E,则称U是G的完全子图。
G 的最大团是指G中所含顶点数最多的团。比如给定一个无向图:

其最大团有3个,都有3个顶点。

最大独立集问题

给定无向图G=(V,E)。如果U⊆\subseteq⊆V,且对任意u,v∈\in∈U 都有(u,v) ∈\in∈E,则称U是G的独立集。可以理解为孤立的点,没有边。

最大独立集就是独立集中顶点数最多的那个独立集。
比如上面的例子中,也有很多最大独立集,其中一个可以是{2,4}。

其等价为图G的补图的最大团,什么是图G的补图
补图:将G中所有没有连接的边都连上,使之称为完全图,然后将原来的那些边删除,就成了G的补图。
上面的补图如下:

图着色问题

给定一个无向图G=(V, E),其中V为顶点集合,E为边集合,图着色问题即为将V分为K个颜色组,每个组形成一个独立集,即其中没有相邻的顶点。其优化版本是希望获得最小的K值,即至少需要多少种颜色,可以把图着色。

对于上图,至少需要4种颜色,使得每种颜色的顶点集合都是独立集。下面是一个解:

为了尽量补充,还有判定问题k-着色

给定一个图,请问可以k着色吗?

意思是,用k种颜色能不能够使得每一种颜色的顶点都是独立集。显然,如果我们都求出了最少需要多少种颜色来给图染色,那么这个问题也就解决了。
比如上图:4着色可以,3着色不可以。

SAT

SAT即satisfiable,即可满足性。
其整体称为一个句子sentence(其实就是一个命题公式),多个短语(phrase)合取而成,每个短语中由命题变元析取而成,这些命题变元又称文字(literal)。
例如:
(p1∨p2)∧(¬p1∨p3)(p_1\vee p_2)\wedge (\lnot p_1\vee p_3)(p1​∨p2​)∧(¬p1​∨p3​)
其中(p1∨p2)(p_1\vee p_2)(p1​∨p2​)称为一个短语,(p1)(p_1)(p1​)称为文字,一整个称为句子。

SAT问题是指,是否存在一种指派,使得整个句子为真。

k-SAT问题,即每个短语中文字的个数限制为k,常见的有2-SAT,3-SAT,比如上面的例子是2-SAT问题。

顶点覆盖

顶点覆盖是图G=(V,E)G=(V, E)G=(V,E)中顶点VVV的子集V′V'V′,使得对于图GGG中的任何一个条边eee,都存在V′V'V′中的某一个顶点,是这个边eee的一个端点。寻找V′V'V′并使得V′V'V′元素个数最少的问题叫做最小顶点覆盖问题。
例如对于下面这个图,绿色顶点集合就是一个最小顶点覆盖(答案不唯一)。

set cover(集合覆盖)

假设我们有个全集U (Universal Set), 以及m个子集合
S1,S2…,SmS_1 ,S_2 …,S_mS1​,S2​…,Sm​, 目标是要寻找最少的集合,使得集合的并集等于U。

注意:乍一看很简单,但是并不简单哦,并不是先选那个最多元素的集合就会越好,例如:

我们直接选择后两个完事,如果你选择了第一个,那么也还是要选择后两个。

图的概念以及常见的图论问题介绍相关推荐

  1. 游戏分析之引擎的基本概念及常见的游戏引擎介绍

    一.引擎的基本概念 关于游戏引擎和中间件 过去开发游戏的时候,游戏机生产商提供的只是硬件的规格书和非常基本的"库".所以,游戏需要的各种程序功能都需要游戏开发团队自己开发.从PC, ...

  2. 获得无向图连通子图_讲透学烂二叉树(一):图的概念和定义—各种属性特征浅析...

    树和图的概念 图是一种特殊的数据结构,由点和边构成,它可以用来描述元素之间的网状关系,这个网状没有顺序,也没有层次,就是简单的把各个元素连接起来. 图的概念和基本性质 图(graph):图(graph ...

  3. 数据结构(六):图的概念、存储方式、基本操作、最小生成树、最短路径、有向无环图、关键路径 | Prim、Kruskal算法 | BFS、Dijkstra、Floyd算法 | 拓扑排序 | 求关键路径

    文章目录 第六章 图 一.图 (一)图的定义 (二)图逻辑结构的应用 (三)无向图.有向图 (四)简单图.多重图 (五)顶点的度.入度.出度 (六)顶点-顶点的关系描述 (七)连通图.强连通图 (八) ...

  4. 图的概念与主要类型、图模型的应用场景

    前言 图(Graph)是一个常见的数据结构,现实世界中有很多任务都可以抽象成图问题,比如社交网络,蛋白体结构,交通路网数据,以及很火的知识图谱等,甚至规则网络结构数据(如图像,视频等)也是图数据的一种 ...

  5. 雪碧图的概念及优缺点,以及行盒的简述

    什么是雪碧图?它的优缺点是什么? 1.雪碧图的概念:实际是指CSS中的图片拼合技术,将多个背景图拼合在同一张图片上,在使用时按照需求对图片位置进行改动. 优点:当多个图片合成一张图片时,减少了加载网页 ...

  6. 计算机显微视觉相关概念,机器视觉的概念及常见应用

    原标题:机器视觉的概念及常见应用 机器视觉的概念及常见应用 机器视觉的相关概念 下面我们将开始进行机器视觉的学习,那么什么实机器视觉呢?可能还有同学听说过计算机视觉, 还有当前比较火的机器学习,人工智 ...

  7. 图数据库入门教程-深入学习Gremlin(1):图基本概念与操作

    前言:Gremlin语言是图数据库最主流的查询语言,是Apache TinkerPop框架下规范的图语言,相当于SQL之于关系型数据库.为了图数据库使用者更好的掌握Gremlin这门图语言,我们对Gr ...

  8. 次世代游戏贴图的概念和制作

    http://blog.sina.com.cn/s/blog_6a36c6860100lm2f.html 导言: 本教程详细的介绍了次世代游戏贴图的概念,对实际生产中的一些制作要点进行了分析,对游戏制 ...

  9. 音频特征(3):各种与波相关的图的概念小结

    各种与波相关的图的概念小结 这里将上两篇所写的关于波形图的一些区分做一个小结: 波形图 意义 函数图像 (1)首先区分振动图和波形图 振动图 反应介质中某一个质点随时间位移(振幅)变化的图像,就好比绳 ...

最新文章

  1. android 图片放大缩小_几款堪称神器的图片无损放大缩小工具!
  2. 第二阶段—个人工作总结08
  3. Nginx负载均衡策略介绍
  4. 【verilog语法】always@(*)自动添加敏感变量列表
  5. Lync登录错误解决一例
  6. Hybris UI的Route(路由)实现
  7. uC/OS-II源码分析(总体思路一)(
  8. 初级Java开发工程师!绝密文档,面试手册全面突击!!!秋招已经到来
  9. 编写一个 SQL 查询,找出每个部门工资最高的员工。
  10. 集成CCFlow工作流与GPM的办公系统驰骋CCOA介绍(三)
  11. 屏蔽网站广告的Chrome谷歌浏览器插件推荐和下载地址
  12. Python 数据可视化学习笔记 之高维数据可视化及其方法
  13. 用计算机计算教学反思,《用计算器计算》的教学反思
  14. Contextual Word Embeddings
  15. 青年志愿者演讲稿范⽂5篇
  16. android语音助手 源代码,语音助理点读功能  |  Android 开源项目  |  Android Open Source Project...
  17. vantUI弹出框和微信小程序的究极大坑
  18. 时间序列分析——基于R | 第2章 时间序列的预处理习题代码
  19. 科技英语文献阅读整理
  20. Linux 中断 —— GIC 初始化

热门文章

  1. 终于!有本书把我从“看完就忘、死记硬背”的学习困境中拯救出来了!
  2. 学习谭浩强老师的《C程序设计》,必配《C程序设计伴侣》!
  3. SQL——以面向集合的思维方式来思考
  4. Tensorflow-gpu1.13.1 和 Tensorflow-gpu2.0.0共存之安装教程
  5. 老视频修复爆火,却惹恼了历史学家:这并不是照片的本质
  6. 数据蒋堂 | 大数据技术的4个E
  7. 报名 | 赢取20万美金!Call For Code编程马拉松北京站来袭!
  8. 史上首次,强化学习算法控制核聚变登上Nature:DeepMind让人造太阳向前一大步...
  9. 科研|Science回应中国燃料电池研究“造假”:发函重点关注,之前撤稿率100%
  10. 【第六期】拿不到offer全额退款 人工智能工程师培养计划招生