图论知识汇总

算法可以发掘本质,如:
一,若干师傅和徒弟互有好感,有好感的师徒可以结对学习。师傅和徒弟都只能参加一个对子。如何让对子最多。
二,有无限多1X2和2X1的骨牌,某个棋盘若干格子坏了,如何在没有坏的格子放足够多骨牌。
三,某个单色图,1表示前前景,0表示后景色。每次操作可以将一个1,变成0。如何在最少得操作情况下,使得没有两个1相邻(四连通)。
四,若干路人,有些人是熟人,如何选出最多的人参加实验。为了避免熟人影响实验的效果,参加的人不能是熟人。
一二是二分图的最大匹配,三是二分图的最小点覆盖,四是二分图最大独立集。 而这三者是等效问题。

深度优先搜索

C++深度优先(DFS)算法的应用:2920收集所有金币可获得的最大积分
C++深度优先搜索的应用:在树上执行操作以后得到的最大分数
C++深度优先搜索(DFS)算法的应用:树中可以形成回文的路径数
【深度优先】LeetCode1932:合并多棵二叉搜索树
【剪枝】【广度优先】【深度优先】488祖玛游戏

【归并排序】【图论】【动态规划】【 深度优先搜索】1569将子数组重新排序得到同一个二叉搜索树的方案数
【深度优先搜索】【组合数学】【动态规划】1467.两个盒子中球的颜色数相同的概率
【图论】【状态压缩】【树】【深度优先搜索】1617. 统计子树中城市之间最大距离
【深度优先搜索】【树】【图论】2973. 树中每个节点放置的金币数目
【图论】【树形dp】【深度优先搜索】2538. 最大价值和与最小价值和的差值
【深度优先搜索】【图论】【树】2646. 最小化旅行的价格总和
【深度优先搜索】【树】【有向图】【推荐】685. 冗余连接 II

【树】【图论】【树路径】【深度优先搜索】2867. 统计树中的合法路径数目
【动态规划】【树形dp】【深度优先搜索】LCP 26. 导航装置
【深度优先搜索】【树】【C++算法】2003. 每棵子树内缺失的最小基因值
【树】【因子数】【数论】【深度优先搜索】2440. 创建价值相同的连通块
【树】【异或】【深度优先】【DFS时间戳】2322. 从树中删除边的最小分数
【深度优先】【图论】【C++算法】2045. 到达目的地的第二短时间

广度(宽度)优先搜索

C++算法:广度优先搜索(BFS)的原理和实现
利用广度优先或模拟解决米诺骨牌
【动态规划】【广度优先】LeetCode2258:逃离火灾
【动态规划】【广度优先搜索】【逆向思考】【单调向量】2617 网格图中最少访问的格子数
【剪枝】【广度优先】【深度优先】488祖玛游戏
【动态规划】【广度优先搜索】【状态压缩】847 访问所有节点的最短路径
【广度优先搜索】【拓扑排序】【C++算法】913. 猫和老鼠
【广度优先搜索】【网格】【割点】1263. 推箱子
【深度优化】【广度优先】【状态压缩】864. 获取所有钥匙的最短路径
【字符串】【括号匹配】【广度优先】301. 删除无效的括号
【广度优先搜索】【堆】【C++算法】407. 接雨水 II
【广度优先搜索】【C++算法】1900. 最佳运动员的比拼回合
【图论】【广度优先】【 并集查找】2092 找出知晓秘密的所有专家

并集查找

C++二分查找或并集查找:交换得到字典序最小的数组
【图论】【并集查找】【C++算法】928. 尽量减少恶意软件的传播 II
【广度优先搜索】【图论】【并集查找】2493. 将节点分成尽可能多的组

最短路径

C++算法:多源最短路径的原理及实现
C++算法:存在负权边的单源最短路径的原理和实现
动态规划 多源路径 字典树 LeetCode2977:转换字符串的最小成本
【单源最短路 图论】882. 细分图中的可到达节点
暂无题解:
2203

最小生成树

【图轮】【 最小生成树】【 并集查找】1489. 找到最小生成树里的关键边和伪关键边

拓扑排序

【图论】【拓扑排序】1857. 有向图中最大颜色值
【拓扑排序】【 图论】1203. 项目管理
【图论】【树】 【拓扑排序】2603. 收集树中金币
【逆向思考 】【拓扑排序】1591. 奇怪的打印机 II
暂无题解:2050 2392

换根法
【深度优先搜索】【C++算法】834 树中距离之和
【图论】【深度优先搜索】【换根法】2858. 可以到达每一个节点的最少边反转次数
【树上倍增】【割点】 【换根法】3067. 在带权树网络中统计可连接服务器对数目
树的路径
【深度优先搜索】【树】【状态压缩】2791. 树中可以形成回文的路径数

欧拉路径、欧拉环

【深度优先搜索】【图论】【推荐】332. 重新安排行程
【数学】【深度优先搜索】【图论】【欧拉环路】753. 破解保险箱
【欧拉回路】【图论】【并集查找】765. 情侣牵手
暂无题解:2097

基环树

基环树,也是环套树,是一种有 n 个点 n 条边的图,简单地讲就是树上在加一条边。它形如一个环,环上每个点都有一棵子树的形式。
基环内向树:每个点出度为1(因此每个环上点的子树,儿子指向父亲)
基环外向树:每个点入度为1(因此每个环上点的子树,父亲指向儿子)
基环树的关键就是找到环,可以先把环当作这个无根树的 “根” ,也就是把环当成一个点(先不管它),这样一颗基环树就变成了一个普通的树,然后我们先按照解决普通树的方法对“根”的所有子树依次处理求解答案

【图论】【基环内向树】【广度优先】【深度优先】2127. 参加会议的最多员工数

暂无题解:
2876 有向图访问计数 基环内向树
2360图中的最长环

树上倍增

【树上倍增】2836在传球游戏中最大化函数值
【深度优先】【树上倍增 】2846. 边权重均等查询

扩展内容难道较大

二分图(染色判定、最大匹配)

【广度优先搜索】【二分图】【并集查找】2493. 将节点分成尽可能多的组
【二分图】【二分图最大匹配】LCP 04. 覆盖

割点、割边

很难点,割点周赛、双周赛没出过。 割边出现过一次。
割点原理及封装好的割点类 有四五题应用,不是必选算法

【图论】【 割边】【C++算法】1192. 查找集群内的关键连接

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【力扣】104. 二叉树的最大深度、111. 二叉树的最小深度

104. 二叉树的最大深度 题目描述 给定一个二叉树 root ,返回其最大深度。 二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。 示例 1: 输入:root [3,9,20,null,null,15,7] 输出:3 示例 2: 输…

ENSP防火墙配置策略路由及ip-link探测

拓扑 配置目标 1.A区域走ISP1,B区域走ISP2 2. isp线路故障时及时切换到另一条线路 配置接口及安全区域 配置安全策略 配置nat 配置默认路由 配置ip-link 配置策略路由 cl-1 cl-2 验证配置成功 策略路由 A走ISP1 B走ISP2 验证线路故障 isp1 in g0/0/0 shoutdow…

Qt——示波器/图表 QCustomPlot

一、介绍 QCustomPlot是一个用于绘图和数据可视化的Qt C小部件。它没有进一步的依赖关系,提供友好的文档帮助。这个绘图库专注于制作好看的,出版质量的2D绘图,图形和图表,以及为实时可视化应用程序提供高性能。QCustomPlot可以导出…

HWOD:走方格的方案数

一、自己的解题思路 1、(0,m)和(n,0) (0,m)表示处在棋盘的左边线,此刻能回到原点的路线只有一个,就是一路向上 (n,0)表示处在棋盘的上边线,此刻能回到原点的路线只有一个,就是一路向左 2、(1,1) (1,1)表示只有一个方格&#…

leetcode645-Set Mismatch

题目 集合 s 包含从 1 到 n 的整数。不幸的是,因为数据错误,导致集合里面某一个数字复制了成了集合里面的另外一个数字的值,导致集合 丢失了一个数字 并且 有一个数字重复 。 给定一个数组 nums 代表了集合 S 发生错误后的结果。 请你找出重…

02 Git 之IDEA 集成使用 GitHub(Git同时管理本地仓库和远程仓库)

2 .IDEA 集成使用 GitHub(Git同时管理本地仓库和远程仓库) 首先在 IDEA 的设置中绑定 GitHub 的账号 先创建一个 test1.txt 文件,内容为 aaa. 最上一栏 VCS, SHARE ON GitHub,然后选择要发送到远程仓库的文件即可。…

Vue实现防篡改水印的效果。删除元素无效!更改元素属性无效!支持图片、元素、视频等等。

1、演示 2、水印的目的 版权保护:水印可以在图片、文档或视频中嵌入作者、品牌或版权所有者的信息,以防止未经授权的复制、传播或使用。当其他人使用带有水印的内容时,可以追溯到原始作者或版权所有者,从而加强版权保护。 身份识…

基于单片机的天然气报警系统设计

摘要:为了有效减少我国家庭火灾事故的发生,提高人民家庭的安全水平,给人们带来更为舒适放心的生活环境,设想如果可以研发结构简单、经济实用的家庭烟雾报警器实现天然气报警系统的智能化,那就可以大幅度地减少家庭火灾事故发生的概率。本文根据单片机原理与传感器理论,提…

跟TED演讲学英文:A new way to build AI, openly by Percy Liang

A new way to build AI, openly Link: https://www.ted.com/talks/percy_liang_a_new_way_to_build_ai_openly? Speaker: Percy Liang Date: October 2023 文章目录 A new way to build AI, openlyIntroductionVocabularyTranscriptSummary后记 Introduction Today’s AI …

i/o设备与主机信息传送的控制方式:

i/o设备与主机信息传送的控制方式:程序查询方式: 是由CPU通过程序不断查询i/o设备是否以做好准备,从而控制i/o设备与主机交换信息,要求i/o设备内设置一个能反映i/o设备是否已准备就绪的状态标记。CPU在反复查询中,犹如…

vitepress/vite vue3 怎么实现vue模版字符串实时编译

如果是vue模版字符串的话,先解析成模版对象 另一篇文章里有vue模版字符串解析成vue模版对象-CSDN博客 //vue3写法(vue2可以用new Vue.extend(vue模版对象)来实现)import { createApp, defineComponent } from vue;// 定义一个简单的Vue组件c…

Unity之Unity面试题(六)

内容将会持续更新,有错误的地方欢迎指正,谢谢! Unity之Unity面试题(六) TechX 坚持将创新的科技带给世界! 拥有更好的学习体验 —— 不断努力,不断进步,不断探索 TechX —— 心探索、心进取…

互联网摸鱼日报(2024-04-09)

互联网摸鱼日报(2024-04-09) 36氪新闻 Hulu登陆Disney,迪士尼的流媒体战略完成整合 大火的“新中式”,给消费行业带来了什么? 特斯拉“今天的坑”,三年前最风光时就埋下了 美国的2024,不是软着陆而是不着陆&#x…

登陆qq,经常收到qq游戏中心的推送信息,关闭推送信息

手动关闭推送信息的步骤: 1.点开左侧游戏中心 2、在打开界面,点击左下角自己的头像 3、打开设置中心,关闭所有的推送 4、完成关闭,不会推送了

头歌-机器学习 第13次实验 特征工程——共享单车之租赁需求预估

第1关:数据探索与可视化 任务描述 本关任务:编写python代码,完成一天中不同时间段的平均租赁数量的可视化功能。 相关知识 为了完成本关任务,你需要掌握: 读取数据数据探索与可视化 读取数据 数据保存在./step1/…

vmware esxi6.0安装配置操作

系统安装及配置 在服务器上安装ESXI 6.0 提示是否继续安装 如果不想安装,按ESC后再按F11即可,稍后电脑会重启. 继续安装,则按回车键 按F11同意声明继续 选择将EXSI 安装到哪个硬盘上,我这里使用的是虚拟机,所以只有这一个选项 选择默认键盘布局,默认的美国键盘即可 设置root…

华为ensp中PPP(点对点协议)中的CHAP认证 原理和配置命令

作者主页:点击! ENSP专栏:点击! 创作时间:2024年4月11日6点00分 PPP协议(Point-to-Point Protocol)是点到点协议,是一种常用的串行链路层协议,用于在两个节点之间建立点…

Facial Micro-Expression Recognition Based on DeepLocal-Holistic Network 阅读笔记

中科院王老师团队的工作,用于做微表情识别。 摘要: Toimprove the efficiency of micro-expression feature extraction,inspired by the psychological studyof attentional resource allocation for micro-expression cognition,we propose a deep loc…

前端自动化测试的方法和工具

前端自动化测试是通过自动化工具来模拟用户操作,验证前端应用的功能、性能和用户体验是否符合预期的过程。以下是几种常见的前端自动化测试方法: 单元测试(Unit Testing): 单元测试是针对代码中最小的可测试单元进行的…

递归的基本思想

递归解决问题的思路是将大问题拆解成更小的同类问题,并通过解决这些更小的问题来解决原始问题。这种方法适用于问题可以被分解成相似的子问题的情况。 递归的基本要素: 基础情况(Base Case):递归函数中需要有一个或多…