题解 | #城市群数量# [P0-T1]

城市群数量

http://www.nowcoder.com/practice/71cde4dee669475f94d8d38832374ada

最普通的DFS

DFS了几遍就有几个城市群。
import java.util.*;

public class Solution {
  boolean[] visited;
  int ans = 0;
  
  public int citys (ArrayList<ArrayList<Integer>> m) {
    visited = new boolean[m.size()];
    for (int i = 0; i < m.size(); i++) {
      if (visited[i]) continue;
      ans++;
      dfs(i, m);
    }
    return ans;
  }
  
  void dfs(int i, ArrayList<ArrayList<Integer>> m) {
    if (visited[i]) return;
    
    visited[i] = true;
    ArrayList<Integer> neis = m.get(i);
    for(int j = 0; j < neis.size(); j++) {
      if (neis.get(j) == 1) dfs(j, m);
    }
  }
}
全部评论

相关推荐

10-24 13:36
门头沟学院 Java
Zzzzoooo:更新:今天下午有hr联系我去不去客户端,拒了
点赞 评论 收藏
分享
评论
2
收藏
分享
牛客网
牛客企业服务