当前位置: 首页 > news >正文

第74天(中等题 数据结构)

打卡第七十四天
1道中等题
image

题目:
image

思路:并查集
image

代码:

class Solution {
public:vector<int> parent;  // 存储每个节点的父节点vector<int> findRedundantConnection(vector<vector<int>>& edges) {int n = edges.size();  // 边的数量parent.resize(n + 1);  // 从1开始,因为节点编号从1开始for(int i = 1; i <= n; i++) {parent[i] = i;  // 初始时每个节点自成一个集合}for(auto& edge : edges) {int x = edge[0], y = edge[1];  // 获取当前边的两个节点if(find(x) == find(y)) {// 如果两个节点已经在同一个集合中,说明这条边会形成环return edge;  // 返回这条冗余边} else {Union(x, y);  // 合并两个集合}}return {};  // 没有找到冗余边返回空向量}int find(int x) {if(x == parent[x]) {// 如果x是自己的父节点return x;  } else {return parent[x] = find(parent[x]);  // 将x的父节点直接设置为根节点}}void Union(int x, int y) {// 将两个节点所在的集合合并int rootx = find(x);  // 找到x的根节点int rooty = find(y);  // 找到y的根节点if(rootx != rooty) {// 如果两个节点不在同一个集合中if(rootx < rooty) {parent[rooty] = rootx;  // 将y的根节点指向x的根节点} else {parent[rootx] = rooty;  // 将x的根节点指向y的根节点}}}
};

耗时≈半小时 明天继续

http://www.jsqmd.com/news/183714/

相关文章:

  • 花授粉优化算法改进及应用毕业论文【附代码】
  • 冲床自动送料全套程序一套,含信捷plc及威纶通触摸屏有详细注释文件,有一定基础的可自行制作,已...
  • 基于SpringBoot+Vue的旅游信息咨询网站的设计与实现
  • 混排涡扇发动机设计点循环计算程序及F119发动机对比分析
  • 《创业之路》-799-要理解段永平的价值投资,须从企业高层战略思维切入,关注长期、本质与护城河;而非中底层执行细节,更非短期市场波动与投机情绪。唯有站在企业家高度,方能看懂“买股票就是买公司”的含义。
  • 【C语言】文件管理详解1(文件的打开与关闭)
  • 商务部支持跨境电商使用Sonic开拓海外市场
  • 基于springboot医院药品管理系统的设计与实现
  • AI驱动的企业现金流周期优化系统
  • Amazon S3(对象存储) 的知识点系统汇总版
  • 基于spring boot的调查问卷系统的设计与实现
  • 论文重复率超过30%?学会这五个实用技巧,快速将查重率降到合格线以下
  • 技术赋能自然:ABACUS标签如何革新碳移除测量与管理
  • 基于spring boot的会议室预订系统设计与实现
  • DeepSeek+Power BI:数据导入脚本生成与可视化图表优化技巧
  • vivado hls设计总结(二)
  • 基于Spring Boot的学生社团管理系统的设计与实现
  • 论文查重结果高于30%?运用这五个高效策略,轻松让重复率符合学术标准
  • 深度学习毕设项目:基于深度学习双分支残差结构的低光照图像增强研究与应用实现
  • 深拷贝函数
  • ESP32 + MicroPython 简易 Web 服务器教程
  • 1、A+B 输入输出练习I
  • 颠覆性7款AI论文神器!20分钟万字问卷,真实参考文献一键搞定!
  • 2025模温机品牌实力榜:防爆非标定制与高精度控温企业盘点
  • 使用 Docker 搭建 EMQX,并通过 MicroPython 实现 MQTT 控制 ESP32 LED
  • 别再瞎调提示词!提示工程架构师揭秘机器学习模型适配的5大黄金原则
  • 计算机深度学习毕设实战-基于深度学习+机器学习的肝病患者智能诊断及系统实现
  • 2026模温机挑选指南:2025年热销榜
  • SQLite 触发器
  • 详细介绍:OpenAI 拉响红色警报,以突击式提升 ChatGPT