leetcode547. 省份数量
leetcode547. 省份数量
题目描述
链接: leetcode547.
有 n 个城市,其中一些彼此相连,另一些没有相连。如果城市 a 与城市 b 直接相连,且城市 b 与城市 c 直接相连,那么城市 a 与城市 c 间接相连。
省份 是一组直接或间接相连的城市,组内不含其他没有相连的城市。
给你一个 n x n 的矩阵 isConnected ,其中 isConnected[i][j] = 1 表示第 i 个城市和第 j 个城市直接相连,而 isConnected[i][j] = 0 表示二者不直接相连。
返回矩阵中 省份 的数量。
示例1:
输入:isConnected = [[1,1,0],[1,1,0],[0,0,1]]
输出:2
示例2:
输入:isConnected = [[1,0,0],[0,1,0],[0,0,1]]
输出:3
题解
使用并查集来解答:
- 初始化并查集,大小为isConnected数组长度,即城市个数
- 双重遍历数组,若isConnected[i][j] == 1 ,则表示第 i 个城市和第 j 个城市直接相连,使用union方法连接,形成连通分量
其中并查集算法可见: 并查集算法.
public int findCircleNum(int[][] isConnected) {int n = isConnected.length;UnionFind unionFind = new UnionFind(n);for (int i = 0; i < n; ++i) {for (int j = i + 1; j < n; ++j) {if (isConnected[i][j] == 1) {unionFind.union(i, j);}}}return unionFind.count;}
leetcode547. 省份数量相关推荐
- 算法题目——省份数量(dfs,bfs)
题目链接:leetcode.547省份数量 dfs: 深度优先遍历:递归 思路:读入数据完成后 重点:建立一个数组记录该省份是否访问,新建一个元素记录省份圈的个数 1.对所有省份循环一次,如果该省份未 ...
- 【数据结构与算法】之深入解析“省份数量”的求解思路与算法示例
一.题目要求 有 n 个城市,其中一些彼此相连,另一些没有相连.如果城市 a 与城市 b 直接相连,且城市 b 与城市 c 直接相连,那么城市 a 与城市 c 间接相连. 省份是一组直接或间接相连的城 ...
- leetcode 547. 省份数量(bfs)
有 n 个城市,其中一些彼此相连,另一些没有相连.如果城市 a 与城市 b 直接相连,且城市 b 与城市 c 直接相连,那么城市 a 与城市 c 间接相连. 省份 是一组直接或间接相连的城市,组内不含 ...
- leetcode:省份数量
有 n 个城市,其中一些彼此相连,另一些没有相连.如果城市 a 与城市 b 直接相连,且城市 b 与城市 c 直接相连,那么城市 a 与城市 c 间接相连. 省份 是一组直接或间接相连的城市,组内不含 ...
- leetcode 547. Number of Provinces | 547. 省份数量(图的邻接矩阵 DFS)
题目 https://leetcode.com/problems/number-of-provinces/ 题解 本题用了图的邻接矩阵 DFS.另外,也可以用并查集来做. class Solution ...
- leetcode 并查集 547.省份数量/200岛屿数量
[数据结构和算法笔记]用并查集求解等价关系_m0_52043808的博客-CSDN博客 模板: class UF { private:vector<int>father;//father数 ...
- 并查集(Union-Find) (图文详解)
文章目录 并查集基础知识 定义 C++实现 优化 精选算法题(Java实现) 实现并查集 交换字符串中的元素 最长连续序列 - 字节面试常考 连通网络的操作次数 最大岛屿数量 (三种解法) 省份数量 ...
- LeetCode算法题整理(200题左右)
目录 前言 一.树(17) 1.1.后序遍历 1.2.层次遍历 1.3.中序 1.4.前序 二.回溯(20) 2.1.普通回溯 2.2.线性回溯:组合.排列.子集.分割 2.3.矩阵回溯 三.二分查找 ...
- 最新IP数据库-基于国家省份城市县区和运营商-专业准确-每月发行
最新IP地址数据库(qqzeng-ip) 2023年6月 最新发行版 992003 条数据 版本:全球旗舰版(国内精华版+国外拓展版) 基于:国内基于省市区以及运营商 国外基于国家 部分到大城市和运营 ...
最新文章
- CV新手避坑指南:计算机视觉常见的8个错误
- Codeforces 813B The Golden Age(数学+枚举)
- c# mysql executescalar_C# 操作MySQL数据库, ExecuteScalar()方法执行T-SQL语句, COUNT(*), 统计数据...
- mysql目录权限设置_MySQL文件及目录权限设置分析-爱可生
- 元素的层次结构和HTML文档结构
- 大一新生开发的小工具火了,网友:我好菜
- html中dir标签的作用是什么意思,htmldir标签是干啥的?dir标签的具体定义和属性介绍...
- html5做旋转太极图,HTML5 Canvas旋转动画的2个代码例子(一个旋转的太极图效果)...
- 网站开发用什么语言好_网站开发教程:企业如何用网站开启在线业务?
- 鸿蒙轻内核源码分析:掌握信号量使用差异
- ajax请求接口连不上会报错吗_服务端有异常, 导致: Ajax 请求报错 net::ERR_INCOMPLETE_CHUNKED_ENCODING...
- Idea中上传项目到Github
- 构造体中变量后面的冒号_类型在变量前面还是后面,终于有答案了
- Fiddler中文版设置抓取某个网站的信息 2021-07-31
- Excel如何安装VBA?
- 网页设计html图片滚动特效,网站设计|滚动特效全面讲解!
- win7磁盘清理_Win7系统使用久变慢怎么办?Windows7系统优化方法
- 孩子数学成绩不好怎么办_三年级发现孩子数学成绩非常不好,作为家长该怎么办?...
- 华为/华三交换机配置SSH免密登录
- Linux网络通讯命令大全