题目描述

题目分析

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.联通网络的操作次数相关推荐

  1. leetcode1319. 连通网络的操作次数

    leetcode1319. 连通网络的操作次数 题目描述 链接: leetcode1319. 用以太网线缆将n台计算机连接成一个网络,计算机的编号从0到n-1.线缆用connections表示,其中c ...

  2. leetcode1319. 连通网络的操作次数(并查集)

    用以太网线缆将 n 台计算机连接成一个网络,计算机的编号从 0 到 n-1.线缆用 connections 表示,其中 connections[i] = [a, b] 连接了计算机 a 和 b. 网络 ...

  3. 【每日一题】 1319. 连通网络的操作次数

    [每日一题] 1319. 连通网络的操作次数 避免每日太过咸鱼,一天搞定一道LeetCode算法题 一.题目描述 用以太网线缆将 n 台计算机连接成一个网络,计算机的编号从 0 到 n-1.线缆用 c ...

  4. leetcode-1319:连通网络的操作次数

    leetcode-1319:连通网络的操作次数 题目 解题 方法一:并查集 题目 题目连接 用以太网线缆将 n 台计算机连接成一个网络,计算机的编号从 0 到 n-1.线缆用 connections ...

  5. 1319. 连通网络的操作次数

    链接:1319. 连通网络的操作次数 题解: 1.图的bfs遍历 class Solution {public:void bfs(std::unordered_map<int, std::vec ...

  6. 【力扣】1319. 连通网络的操作次数

    以下为力扣官方题解 1319. 连通网络的操作次数 题目 示例1 示例2 示例3 示例4 提示 官方题解 思路一 深度优先搜索 代码 复杂度分析 思路二 并查集 代码 复杂度分析 题目 用以太网线缆将 ...

  7. 【数据结构与算法】之连通网络的操作次数的算法

    一.题目要求 用以太网线缆将 n 台计算机连接成一个网络,计算机的编号从 0 到 n-1.线缆用 connections 表示,其中 connections[i] = [a, b] 连接了计算机 a ...

  8. leetcode 1319. 连通网络的操作次数(并查集)

    用以太网线缆将 n 台计算机连接成一个网络,计算机的编号从 0 到 n-1.线缆用 connections 表示,其中 connections[i] = [a, b] 连接了计算机 a 和 b. 网络 ...

  9. LeetCode 1319. 连通网络的操作次数(BFS/DFS/并查集)

    文章目录 1. 题目 2. 解题 2.1 BFS 2.2 DFS 2.3 并查集 1. 题目 用以太网线缆将 n 台计算机连接成一个网络,计算机的编号从 0 到 n-1. 线缆用 connection ...

最新文章

  1. CentOS 7.x 远程重装
  2. (chap8 确认访问用户身份的认证) BASIC认证(基本认证)
  3. Oracle 的一些语句
  4. 6.边缘检测:梯度——回顾、简化的图像、边缘概念_1
  5. 年轻人的第一套租房?小米成立新公司或涉房屋租赁业务
  6. 数学 之 hdu 4710 Balls Rearrangement
  7. win10电脑一开机提示拒绝访问怎么办
  8. WebGL多模型光照综合实例
  9. 中国本土八大会计师事务所简介
  10. python做估值模型_通证估值模型-费雪模型与净现值模型详解
  11. 量化交易学习(10)均线交叉策略
  12. linux在目录前加前缀,linux中批量添加文件前缀的操作方法
  13. java中的反射机制是什么
  14. app开发-CocoaChina
  15. IAR问题:Failed to get CPU status after 4 retries Retry?
  16. 如何判断对象是否是垃圾
  17. 一名UI设计师眼中的用户体验
  18. Python的10种谋生方法,你们都知道了吗?
  19. 那些记在心里的经典诗词
  20. Python安装教程(3.8)

热门文章

  1. 一个页面同时发起多个ajax请求,会出现阻塞情况
  2. Python的看门狗实现自动化实时对服务器、Windows或Linux文件夹的实时监控
  3. Python 06-字典
  4. 织梦CMS AJAX分页,可自定义typeid,调取任意内容
  5. OpenFire源码学习之十九:在openfire中使用redis插件(上)
  6. Linux 2440 LCD 控制器
  7. 【转】更改远程桌面默认端口3389及删除远程桌面连接历史记录
  8. python 线型_CCF 202006-1 线性分类器 python
  9. 服务器主板北桥芯片组有哪些,主板芯片组_目前的主板芯片组都有哪些?
  10. c++ 分页展示_分合相宜 Excel透视报表生成分页和汇总报表