基环树简介

【基环树简介】
● 众所周知,树上没有环。一棵树由 n 个结点及 n−1 条边构成。
● 基环树是由 n 个结点及 n 条边组成的
连通图

显然,基环树上存在环。因此,基环树本质上不是树,而是图。基环树又称章鱼图
基环树的的特别之处就在于这个环,因此,大部分基环树题目中,找环是十分必要的。
(1)“简单图”找环代码

void getloop(int u) {dep[u]=dep[fa[u]]+1;for(auto t:e[u]) {if(t==fa[u]) continue;if(!dep[t]) {fa[t]=u;getloop(t);} else if(dep[t]<dep[u]) {int i=u;while(1) {st[i]=1;//loop[++idx]=i;if(i==t) break;i=fa[i];}}}
}

(2)“重边图”找环代码

void getloop(int u,int v) {dep[u]=dep[fa[u]]+1;for(auto t:e[u]) {int fi=t.first,se=t.second; if(se==v) continue;if(!dep[fi]) {fa[fi]=u;getloop(fi,se);} else if(dep[fi]<dep[u]) {int i=u;while(1) {st[i]=1;//loop[++idx]=i;if(fi==v) break;i=fa[i];}}}
}

● 有向基环树
有向基环树分为
内向基环树外向基环树

内向基环树,每个结点出度为 1;外向基环树,每个结点入度为 1。
● 基环树森林
多棵树可以组成一个森林,多棵基环树可以组成基环树森林。
多棵外向基环树可以组成
外向基环树森林,多棵内向基环树可以组成内向基环树森林。​​​​​​​



【参考文献】
https://www.cnblogs.com/pure4knowledge/p/18211724
https://www.cnblogs.com/yifan0305/p/17506679.html
https://blog.csdn.net/ZhuRanCheng/article/details/131736222
https://blog.csdn.net/hnjzsyjyj/article/details/140716866

 

 


 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3269054.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

qtscrcpy 环境搭建 基于qt5.14.2 vs2017

下载软件 qt5.14.2Visual Studio 2017 Community 安装文件链接参考文末 安装说明 Visual Studio 2017 Community&#xff0c; 一键安装&#xff0c;只需要 c 模块即可 qt5.14.2 安装需要选择msvc 2017 32bit, 因为 ffmpeg 编译的是 32bit 代码下载 https://gitee.com/…

1.ESP32-CAM 下使用 ESP-IDF 打开摄像头

主要资料&#xff1a; 乐鑫官方编程指南 ESP-IDF 编程指南安信可官方模块页 安信可-ESP32-CAM摄像头开发板官方使用教程 安信可ESP32-CAM摄像头开发demo–局域网拍照、实时视频、人脸识别 &#xff08;开发环境是Linux&#xff09; 本文目标是在 Windows 下跑通摄像头 hello …

大数据-52 Kafka 基础概念和基本架构 核心API介绍 应用场景等

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; 目前已经更新到了&#xff1a; Hadoop&#xff08;已更完&#xff09;HDFS&#xff08;已更完&#xff09;MapReduce&#xff08;已更完&am…

苍穹外卖01

0. 配置maven (仅一次的操作 1.项目导入idea 2. 保证nginx服务器运行 &#xff08;nginx.exe要在非中文的目录下&#xff09; 开启服务&#xff1a; start nginx 查看任务进程是否存在&#xff1a; tasklist /fi "imagename eq nginx.exe" 关闭ngi…

【优秀python web系统毕设】基于python的全国招聘数据分析可视化系统,包括随机森林算法

1.1 研究背景 自1997年互联网开始在国内的招聘行业发展至今已有二十几年的历史&#xff0c;互联网招聘进入了蓬勃发展的“黄金时代”。根据智研咨询发布的《2023年中国互联网招聘行业发展现状》报告显示&#xff0c;截至2023年5月&#xff0c;中国互联网招聘平台中&#xff0c…

Navicat 17 新特性 | Navicat BI 功能革新升级,助力企业深度挖掘数据潜能

随着 Navicat 17 的发布&#xff0c;在业界引起了广泛的共鸣与热议。我们曾深入剖析其众多革新特性&#xff0c;包括模型设计创新与优化、高效的查询与配置、用户界面交互体验再升级&#xff0c;原生适配国产平台和操作系统和数据字典提升数据结构清晰度&#xff0c;这些新特性…

MySQL查询优化 limit 100000,10加载很慢该怎么优化

需求&#xff1a;查询19年以后发布的商品 数据库表结构如下&#xff1a; 目前数据量&#xff1a;264751 优化前执行时间&#xff1a;0.790s 优化后执行时间&#xff1a;0.467s select id,no,title,cart_title,cid_name from tb_item where id > (select id from tb_item …

Gitlab以及分支管理

一、概述 Git 是一个分布式版本控制系统&#xff0c;用于跟踪文件的变化&#xff0c;尤其是源代码的变化。它由 Linus Torvalds 于 2005 年开发&#xff0c;旨在帮助管理大型软件项目的开发过程。 二、Git 的功能特性 Git 是关注于文件数据整体的变化&#xff0c;直接会将文件…

【Beyond Compare】Beyond Compare下载、安装与使用详细教程

目录 &#x1f33a;1 概述 &#x1f384;2 Beyond Compare 安装包下载 &#x1f33c;3 安装详细教程 &#x1f342;4 免费注册 &#x1f30d;5 使用详情 &#x1f33a;1 概述 Beyond Compare 是一款强大的文件和文件夹比较工具&#xff0c;广泛应用于软件开发、文档管理和…

论文中的流程图参考图片

写论文的时候&#xff0c;在绘制流程图时&#xff0c;一直纠结n是大写还是小写&#xff0c;用不用斜体&#xff0c;号两边要不要空格。今天找到了一张标准的流程图来参考。图片来自 Zhi-Chang Ba et al, Combination of DCE-MRI and NME-DWI via Deep Neural Network for Predi…

[Unity] ShaderGraph实现镜头加速线/残血效果 URP

效果如下所示&#xff1a;残血状态时&#xff0c;画面会压暗角&#xff0c;并出现速度线营造紧迫感。 使用到的素材如下&#xff0c;换别的当然也可以。[这是张白色的png放射图&#xff0c;并非皇帝的新图hhh] 这个效果的实现逻辑&#xff0c;其实就是利用time向圆心做透明度的…

【全国大学生电子设计竞赛】2023年G题

&#x1f970;&#x1f970;全国大学生电子设计大赛学习资料专栏已开启&#xff0c;限时免费&#xff0c;速速收藏~

Windows11安装WSL2 笔记240726

以管理员身份打开控制台输入 wsl --status wsl --status如果什么也没有,说明系统还未安装WSL , 执行 wsl --install 进行安装 wsl --install安装完成后, 再次执行 wsl --status 可看到 wsl --status 默认版本: 2 当前计算机配置不支持 WSL1。 若要使用 WSL1&#xff0c;请启用…

CentOS配置NTP服务

更改配置文件 [rootController ~]# vim /etc/chrony.conf 重启服务并设置为开机自启动 [rootController ~]# systemctl restart chronyd.service [rootController ~]# systemctl enable chronyd.service 在另一台CentOS测试 更改配置文件 [rootCompute ~]# vim /etc/chron…

idea 自动生成pojo类

找到这个View>Tool Windows>Database配置数据库 配置好后刷新&#xff0c;查看是否连接上表 然后找到 点击后选择你将要生成的pojo需要保存到哪个文件&#xff0c;然后再次点击&#xff0c;就生成好了&#xff0c;然后自己稍作修改即可使用该pojo类了

AI绘画,100w+播放封神!1分钟教你制作AI视频!各地的守护神终于出现了

前言 神兽教程 这种视频怎么做&#xff0c;Lison也是熬夜很快写了拆解教程~ 一、获取提示词 首先在 Kimi 或者 GPT 上可以查询各个省份的特色动物是什么&#xff0c;用各个省份的特色动物去做这样的图会更有归属感一些。 例如四川是大熊猫&#xff0c;甘肃是马&#xff0c…

深度学习目标检测入门实战

深度学习目标检测入门实战 一、什么是目标检测二、目标检测常用的数据集&#xff08;开源&#xff09;&#xff08;一&#xff09;VOC数据集&#xff08;1&#xff09;背景知识&#xff08;2&#xff09;数据集的下载&#xff08;3&#xff09;VOC2007 数据集的标注&#xff08…

C++初学(4)

4.1、const限定符 如果程序在多个地方使用同一个常量&#xff0c;则需要修改该常量时&#xff0c;只需修改一个符号定义即可。前面介绍#define语句时说明过&#xff0c;C有更好的处理符号常量的方法&#xff0c;就是使用const关键字来修改变量声明和初始化。假设需要一个表示一…

【Python机器学习】朴素贝叶斯——基于贝叶斯决策理论的分类方法

k-近邻算法和决策树分类器有时会产生错误结果&#xff0c;这是可以要求分类器给出一个最优的类别猜测结果&#xff0c;同时给出这个猜测的概率估计值 概率论是许多机器学习算法的基础&#xff0c;所以深刻理解这一主题就非常重要。有一些使用概率论进行分类的方法。首先是从一…

Godot入门 06死亡机制1.0版

限制相机的底部滚动极限&#xff0c;使用标尺工具量出距离&#xff0c;设置距离为100&#xff0c;并设置平滑停止。 添加新场景&#xff0c;添加节点Area2D&#xff0c;设置碰撞的物理层为2&#xff0c;改节点名为Killzone。 拖动Killzone场景到Game场景中。给Killzone添加Coll…