首页 > 其他分享 >弦图学习笔记

弦图学习笔记

时间:2024-07-24 22:09:49浏览次数:11  
标签:存在 子图 笔记 学习 相邻 单纯 PEO 任意

1. 定义

弦(chord): 对于一个点数大于等于 4 的简单环,连接环上不相邻两点的边称作弦。

弦图: 对于无向图 \(G\),如果其每个点数大于等于 4 的简单环都存在至少一条弦,则称这个图是弦图。

这个定义等价于:图 \(G\) 的任何诱导子图不是 \(K\) 阶环(\(K \ge 4\))。

单纯点: 对于任意的无向图 \(G\),\(v\) 是单纯点 \(\iff\) \(N(v)\) 构成一个团。

完美消除序列(Perfect Emination Order, PEO): 对于 \(n\) 个点的图 \(G\),其点集的一个排列 \(v_1, v_2, \dots, v_n\) 被称为完美消除序列当且仅当对于任意的 \(v_i\),其在 \(v_i, v_{i+1}, \dots, v_n\) 构成的诱导子图中是单纯点。

点割集: 对于图 \(G\) 中不相邻的两个点 \(u, v\),\(A\) 是一个点割集当且仅当 \(V-A\) 的导出子图中 \(u, v\) 不连通。

2. 性质与定理

性质 1: 弦图的任意导出子图依然是弦图。

引理 1: 弦图中,\(u,v\) 的任意极小点割集 \(A\) 是一个团。

设删掉 \(A\) 后 \(u, v\) 所在的连通分量 CC 分别为 \(V_1, V_2\)。
显然 \(\forall x \in A\),\(N(x)\) 交 \(V_1\), \(V_2\),否则与极小的假设矛盾。
对于任意的 \(x, y \in A\),我们先在 \(V_1\) 中取 \(x_1, y_1\) 使其分别于 \(x,y\) 相邻,由上面知这样的点存在。
同理在 \(V_2\) 中取 \(x_2, y_2\)。
考虑由 \(x_1, y_1\) 在 \(V_1\) 中的最短路,以及 \(x_2,y_2\) 在 \(V_2\) 中的最短路和 \(x,y\) 构成的环。
由于是弦图,说明一定存在一条弦边。又因为是最短路,所以弦边只能是 \((x,y)\)!
所以对于任意的点都有连边,引理得证。

引理 2: 对于任意弦图一定存在至少一个单纯点,对于任意非完全图的弦图存在不相邻的两个单纯点。

归纳法,\(n=1\) 显然成立,现在假设 \(<n\) 的都成立。
如果不连通,由归纳假设得证,完全图也显然,所以假设是连通非完全图。
任取两个点 \(u,v\) 及其极小点割集 \(A\)。考虑两种情况。
第一种,\(V_1 \cup A\) 为团,\(v_1\) 任何点都是单纯点。
第二种,不为团,考虑到 \(A\) 是团,不可能有两个不相邻的单纯点。> 又因为归纳假设知道存在两个不相邻的单纯点,所以 \(V_1\) 一定有一个单纯点!
同理可得 \(V_2\) 也有一个单纯点,显然两个点不连通,得证。

定理 1: 图 \(G\) 是弦图 \(\iff\) 存在 PEO

根据引理 2 和性质 1,我们知道弦图肯定存在 PEO。
如果一个图不是弦图,存在环没有弦,这就导致最先访问的一个点肯定不是单纯点。
所以定理得证。

3. LEX-BFS 算法

我们考虑如何判定一个图是不是弦图,LEX-BFS 可以在 \(O(n + m)\) 的时间内求出一个弦图的 PEO,如果不是弦图得到的就不会是 PEO。

我们考虑 BFS 的本质:每次从未访问的点选一个,使其 pedecessor (邻居中已经被访问的节点)尽量靠前被访问,然后访问这个点。

我们做一些变化:如果 pedecessor 是同一个点,我们就比较第二靠前的 pedecessor 知道不一样。

具体的,我们倒序生成这个序列,然后对每个点存在一个 pedecessor,每次找到字典序最大的 访问。

考虑证明其一定是 PEO。

如果不是,说明存在 \(i\) 和 \(i_1\) 和 \(i_2\),使得 \((i, i_1), (i, i_2)\) 但没有 \((i_1, i_2)\)。

考虑到这个算法的过程,说明存在一个点 \(i_3\) 使得 \(i_3 > i_2\),且 \(i_3\) 在这三个点中只与 \(i_1\) 右边。

以此类推存在 \(i_4 > i_3\) 只与 \(i_2\) 右边。

注意这个过程可以无限进行,但是显然 PEO 不是无限的,矛盾!所以得知正确性。

最后,我们还需要判定一个图是不是弦图,这个可以从后往前,每次找到其后面的点中相邻的第一个点,只要判断他和其它点是否相邻即可,因为他和后面的点之前已经判断了。

这样整个算法就是 \(O(n+m)\) 的。

实现?想多了。

4. 应用

色数等于团数,最小团覆盖等于最大独立集,极大团数量是 \(O(n)\) 的都可以求出来。

标签:存在,子图,笔记,学习,相邻,单纯,PEO,任意
From: https://www.cnblogs.com/rlc202204/p/18321858

相关文章

  • Vue全家桶 - pinia 的理解和学习1(Pinia 核心概念的 Store、State、Getter、Action)
    Pinia(Vue的专属状态管理库)Pinia和Vuex的区别设计理念和架构Vuex采用集中式架构,所有状态存储在一个全局状态树中,通过mutations和actions来修改和处理状态。Pinia采用去中心化的架构,每个模块有自己的状态,这使得Pinia在代码分割和模块化方面更加灵活。TypeSc......
  • 【Linux入门】一篇文章带你了解Linux的发展史及Linux环境的搭建,满满干货,赶紧进来学习
    目录本章概要一.Linux背景介绍1.1发展史1.2开源1.3官网1.4企业应用现状1.5发行版本二.如何搭建Linux环境?三.使用Xshell远程登陆到Linux3.1下载安装Xshell3.2查看Linux主机IP3.3使用XShell登陆主机3.4XShell下的复制粘贴结尾本章概要认识Linux......
  • 深度 学习
    深度学习入门数据是学习的核心神经网络借鉴人类脑神经的工作原理,但是对于“神经网络就是模仿人脑神经”这样的言论我们是非常抵触的。引入:深度学习是机器学习的一个子领域,而机器学习的研究目标是让人工智能具备学习的能力。深度学习,机器学习,人工智能字里行间透漏着理性和高大......
  • 卡尔曼滤波器原理的学习理解
    一、什么是卡尔曼。跟其他著名的理论(例如傅立叶变换,泰勒级数等等)一样,卡尔曼也是一个人的名字,而跟他们不同的是,他是个现代人!1960年卡尔曼在他的博士论文和发表的论文《ANewApproachtoLinearFilteringandPredictionProblems》(线性滤波与预测问题的新方法中提出了这种算法......
  • C语言学习day03
    变量概念表面:程序运行过程中取值可以改变的数据实质:变量其实代表了一块内存区域/单元/空间。变量名可视为该区域的标识。整个变量分为三部分:  变量名:这个只是变量的一个标识,我们借助变量名来存取数据。  变量空间/内存单元:这个就是内存中分配的一块用来存储数据的......
  • Spring Boot学习|Stopwatch 在 Spring Boot 中的使用
    文章目录什么是Stopwatch?使用场景优点缺点注意事项使用步骤使用案例及结果可能面试题1.**理解与解释**2.**技术细节**3.**实际应用**4.**优缺点与替代方案**5.**面向框架的具体问题**6.**高级主题**什么是Stopwatch?Stopwatch是由ApacheCommonsLang......
  • 目标检测的即时演进:在线学习在行动
    目标检测的即时演进:在线学习在行动在线学习(OnlineLearning)是一种机器学习范式,它允许模型通过逐步接收数据并实时更新来学习。这种学习方式对于目标检测尤其重要,因为它允许检测系统在不断变化的环境中适应新的或罕见的目标,同时保留对旧目标的检测能力。本文将探讨在线学习......
  • hadoop学习
    Hadoop是一种用于存储和处理大数据的开源软件框架,它采用分布式文件系统和MapReduce编程模型,可以有效地处理海量数据。在学习Hadoop的过程中,我掌握了许多重要的知识和技能,以下是我的Hadoop学习总结:首先,我学会了Hadoop的核心概念和架构。Hadoop由HDFS(分布式文件系统)和MapReduce组成......
  • opencascade AIS_Line源码学习
    前言AIS_Line是OpenCASCADE库中的一个类,用于表示和操作三维直线。它可以通过几何线(Geom_Line)或者两个几何点(Geom_Point)来初始化。方法1//!初始化直线aLine。Standard_EXPORTAIS_Line(constHandle(Geom_Line)&aLine);2//!初始化直线的起点aStartPoint和终......
  • 基于AT89C51单片机的简易计算器(含仿真、源码、论文适用于小白学习、课程设计等)
    本篇文章论述的是基于AT89C51单片机的简易计算器设计的详情介绍,如果对您有帮助的话,还请关注一下哦,如果有资源方面的需要可以联系我。含有仿真、源码的下载链接(如果打开不显示就是资源在审核中,如果着急需要的话可以私信我获取)基于AT89C51单片机的简易计算器资源-CSDN文库......