每日一题:leetcode1319.联通网络的操作次数
题目描述
题目分析
ps:这篇博客是补前天的,前天在老家不方便写博客
题目挺简单的,但是通过题目对图的连通性有了一个更深刻的认识:如果有超过(或等于)n-1条边,则一定是可以让整个图联通的。
如果想让整个图联通,只需要求出整个图的联通分量个数,然后-1就是需要的边的个数(即让这写联通分量联通即可)
AC代码
class UnionFind {public:vector<int> father;vector<int> size;int n;int setCount;UnionFind(int _n):n(_n),setCount(_n),father(_n),size(_n,1) {iota(father.begin(), father.end(), 0);}int root(int x) {return x == father[x] ? x : father[x] = root(father[x]);}bool unite(int x, int y) {x = root(x);y = root(y);if (x == y) {return false;}if (size[x] < size[y]) {swap(x, y);}father[y] = x;size[x] += size[y];--setCount;return true;}bool connected(int x, int y) {return root(x) == root(y);}
};
class Solution {public:int makeConnected(int n, vector<vector<int>>& connections) {if (connections.size() < n - 1) {return -1;}UnionFind uf(n);for (auto &edge : connections) {uf.unite(edge[0], edge[1]);}return uf.setCount - 1;}
};
每日一题:leetcode1319.联通网络的操作次数相关推荐
- leetcode1319. 连通网络的操作次数
leetcode1319. 连通网络的操作次数 题目描述 链接: leetcode1319. 用以太网线缆将n台计算机连接成一个网络,计算机的编号从0到n-1.线缆用connections表示,其中c ...
- leetcode1319. 连通网络的操作次数(并查集)
用以太网线缆将 n 台计算机连接成一个网络,计算机的编号从 0 到 n-1.线缆用 connections 表示,其中 connections[i] = [a, b] 连接了计算机 a 和 b. 网络 ...
- 【每日一题】 1319. 连通网络的操作次数
[每日一题] 1319. 连通网络的操作次数 避免每日太过咸鱼,一天搞定一道LeetCode算法题 一.题目描述 用以太网线缆将 n 台计算机连接成一个网络,计算机的编号从 0 到 n-1.线缆用 c ...
- leetcode-1319:连通网络的操作次数
leetcode-1319:连通网络的操作次数 题目 解题 方法一:并查集 题目 题目连接 用以太网线缆将 n 台计算机连接成一个网络,计算机的编号从 0 到 n-1.线缆用 connections ...
- 1319. 连通网络的操作次数
链接:1319. 连通网络的操作次数 题解: 1.图的bfs遍历 class Solution {public:void bfs(std::unordered_map<int, std::vec ...
- 【力扣】1319. 连通网络的操作次数
以下为力扣官方题解 1319. 连通网络的操作次数 题目 示例1 示例2 示例3 示例4 提示 官方题解 思路一 深度优先搜索 代码 复杂度分析 思路二 并查集 代码 复杂度分析 题目 用以太网线缆将 ...
- 【数据结构与算法】之连通网络的操作次数的算法
一.题目要求 用以太网线缆将 n 台计算机连接成一个网络,计算机的编号从 0 到 n-1.线缆用 connections 表示,其中 connections[i] = [a, b] 连接了计算机 a ...
- leetcode 1319. 连通网络的操作次数(并查集)
用以太网线缆将 n 台计算机连接成一个网络,计算机的编号从 0 到 n-1.线缆用 connections 表示,其中 connections[i] = [a, b] 连接了计算机 a 和 b. 网络 ...
- LeetCode 1319. 连通网络的操作次数(BFS/DFS/并查集)
文章目录 1. 题目 2. 解题 2.1 BFS 2.2 DFS 2.3 并查集 1. 题目 用以太网线缆将 n 台计算机连接成一个网络,计算机的编号从 0 到 n-1. 线缆用 connection ...
最新文章
- CentOS 7.x 远程重装
- (chap8 确认访问用户身份的认证) BASIC认证(基本认证)
- Oracle 的一些语句
- 6.边缘检测:梯度——回顾、简化的图像、边缘概念_1
- 年轻人的第一套租房?小米成立新公司或涉房屋租赁业务
- 数学 之 hdu 4710 Balls Rearrangement
- win10电脑一开机提示拒绝访问怎么办
- WebGL多模型光照综合实例
- 中国本土八大会计师事务所简介
- python做估值模型_通证估值模型-费雪模型与净现值模型详解
- 量化交易学习(10)均线交叉策略
- linux在目录前加前缀,linux中批量添加文件前缀的操作方法
- java中的反射机制是什么
- app开发-CocoaChina
- IAR问题:Failed to get CPU status after 4 retries Retry?
- 如何判断对象是否是垃圾
- 一名UI设计师眼中的用户体验
- Python的10种谋生方法,你们都知道了吗?
- 那些记在心里的经典诗词
- Python安装教程(3.8)
热门文章
- 一个页面同时发起多个ajax请求,会出现阻塞情况
- Python的看门狗实现自动化实时对服务器、Windows或Linux文件夹的实时监控
- Python 06-字典
- 织梦CMS AJAX分页,可自定义typeid,调取任意内容
- OpenFire源码学习之十九:在openfire中使用redis插件(上)
- Linux 2440 LCD 控制器
- 【转】更改远程桌面默认端口3389及删除远程桌面连接历史记录
- python 线型_CCF 202006-1 线性分类器 python
- 服务器主板北桥芯片组有哪些,主板芯片组_目前的主板芯片组都有哪些?
- c++ 分页展示_分合相宜 Excel透视报表生成分页和汇总报表