• 547. 省份数量


    有 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
    

    提示:

    • 1 <= n <= 200
    • n == isConnected.length
    • n == isConnected[i].length
    • isConnected[i][j] 为 1 或 0
    • isConnected[i][i] == 1
    • isConnected[i][j] == isConnected[j][i]
    class Solution {
        public int findCircleNum(int[][] M) {
            if(M==null||M.length==0||M[0].length==0)return 0;
            int n=M.length;
            int ans=0;
            boolean[] vis=new boolean[n];
            Queue<Integer>q=new LinkedList<>();
    
            for(int i=0;i<n;i++){
                if(vis[i])continue;
                q.add(i);
                while(!q.isEmpty()){
                    int cur=q.poll();
                    vis[cur]=true;
                    for(int j=0;j<n;j++){
                        if(M[cur][j]==1&&!vis[j]){
                            q.add(j);
                        }
                    }
                }
                ans++;
            }
            return ans;
        }
    }
  • 相关阅读:
    Kettle学习(2)
    kettle学习(1)
    Quartz在Spring中的使用
    JVM垃圾收集简介
    快速排序

    20190827最新论文
    GNN
    Multimodal Machine Learning
    Wasserstein距离 及两多元高斯分布间的W距离
  • 原文地址:https://www.cnblogs.com/xxxsans/p/14249317.html
Copyright © 2020-2023  润新知