首页 > 其他分享 >图论的一些知识

图论的一些知识

时间:2023-10-15 20:13:14浏览次数:37  
标签:图论 路径 log 定理 知识 tarjan 点数 一些 虚树

  • tarjan 算法
  • 虚树
  • DAG 剖分
  • 矩阵树定理
  • 最小树形图 ( )
  • 斯坦纳树 (感觉可以看看?)
  • 同余最短路
  • 平面图 and 对偶图
  • 线性规划
  • 网络流
  • 一般图最大匹配
  • Prüfer 序列
  • 竞赛图
  • 稳定婚姻问题
  • 2-sat
  • 仙人掌
  • Dilworth 定理 ( )

tarjan 算法

有向图 \(\to\) 强连通分量

无向图 \(\to\) 广义圆方树

一些性质:

  • 点双中任意两个点之间都存在至少两条不相交的路径 (除去起点和终点)。

虚树

关于虚树的几种方法:

  • 求虚树的点数 (点数) \(\to\) 每两个点的 $\operatorname {lca} $ 所构成的集合大小
  • 求虚树的边数:
  1. 按照 dfs 序排序之后相邻两项的距离之和(包括第一项和最后一项)再除以 \(2\)。
  2. 子树中至少包含一个点的点数减去 \(lca\) 的祖先个数。

DAG 剖分

要求总路径数不是很大 (一般配合 SAM 求第 \(k\) 大字串)。

每个点指向路径数最大的一条边,称为重边,这样一条路径最多跳 \(\log\) 条轻边。

可以用倍增做到 $\log ^2 $ 。类似的情况可以使用可持久化平衡树。保证合并复杂度 \(O(\log)\)。

矩阵树定理

有部分拓展

标签:图论,路径,log,定理,知识,tarjan,点数,一些,虚树
From: https://www.cnblogs.com/xzc0920/p/17766084.html

相关文章

  • 搜索与图论2.2-Floyd算法
    一、简述\(Floyd\)算法是一种可以快速求解图上所有顶点之间最短路径的算法。\(Bellman-Ford\)和\(Dijkstra\)算法求解的都是从一个起始点开始的最短路。如果想要求解图中所有顶点之间的最短路,就需要枚举每个点做为起点,这样十分低效。\(Floyd\)算法(也称\(Floyd-Warshall\)......
  • 科普知识:Arduino助力人工智能机器人课程
    一、课程目标初级课程主要面向大学通识课程、中小学教师,通过教师讲解了解机器人的发展、基本原理、关键技术以及与人工智能的关系和发展,通过文献调研对机器人领域形成自己的认识,通过课堂协作、竞赛任务完成实践对机器人的设计、控制和优化。共计32学时。1、Arduino的优势比如你......
  • 2023_10_15_DAY_01_JAVA_SE_Java基础知识_下_流程控制语句
    2023_10_15_DAY_01_JAVA_SE_Java基础知识_下_流程控制语句分支【选择】结构if语句if(表达式){ 执行语句块;}//if语句的代码执行过程为:如果条件表达式返回真值,则执行功能代码块中的语句;//如果条件表达式返回值为假,则不执行功能代码块。语法说明:if是该语句中的关键字,后......
  • 2023_10_15_DAY_01_JAVA_SE_Java基础知识_中_变量与运算符
    2023_10_15_DAY_01_JAVA_SE_Java基础知识_中_变量与运算符标识符、关键字和保留字标识符在Java语言中,通过标识符来表示一些元素的名字,比如变量名、类名、方法名和包名等。Java中的标识符要符合下面的规则:标识符必须以字母、下划线(_)、数字或美元($)组成;标识符必须由字母、下......
  • 2023_10_15_DAY_01_JAVA_SE_Java基础知识_上
    2023_10_15_DAY_01_JAVA_SE_Java基础知识什么是Java计算机语言是人与计算机之间的通讯语言,分为机器语言、汇编语言、高级语言。Java是一种高级计算机语言,它是由Sun公司(已被Oracle公司收购)于1995年5月推出。Java语言平台Java语言平台包括3个版本,标准版、企业版、微型版。Jav......
  • 关于浮点数的一些小知识点
    转载自:C++标准cout输出精度解析double和float的区别1.double是双精度浮点数,内存占8个字节,有效数字16位,表示范围是-1.79E+308~1.79E+308。float是单精度浮点数,内存占4个字节,有效数字8位,表示范围是-3.40E+38~3.40E+38。2.两者处理速度不同,CPU处理float的速度比处理double快。......
  • python的一些模块
    1.sys模块sys是python自带模块.sys模块常见函数1$python2Python2.7.6(default,Oct262016,20:30:19)3[GCC4.8.4]onlinux24Type"help","copyright","credits"or"license"formoreinformation.5>>>import......
  • UML相关知识复习
    1、耦合标记耦合--->参数传递;访问另一个模块的内部数据-->内部耦合;模块之间关联程度最高的是内部耦合;2、内聚内聚程度由高到低:功能聚合-->顺序聚合-->瞬时聚合-->逻辑聚合;3、数据流图(DFD)数据流图包括:外部实体、数据流、加工、数据存储;4、设计模式的根本目的复习相似问题......
  • 图论总结
    图论树和图的存储`树是特殊的图,无环的联通图图分为有向图和无向图,无向图是一种特殊的有向图`邻接矩阵存稠密图,空间复杂度\(O(n^2)\)g[u][v]=w;邻接表voidinit(){ for(inti=0;i<N;i++) h[i]=-1;}voidadd(inta,intb){//在链表头插......
  • 关于 EI 的三次多项式复合的一些注解
    感谢APJifengc指导.看了xiaoziyao的复合,大概理解EI的思路了,但是似乎细节上有一些问题,在此注记.下文「复合」均指右复合.前置内容复合二次分式的内容可以参考参考文献[2].复合\(ax+b\)先考虑如何复合\(x+c\).\[\begin{aligned}\mathrm{ans}&=\sum_{i\ge0}a_i......