Skip to content

547. Friend Circles #2

@asu126

Description

@asu126
package main

import "fmt"

func findCircleNum(M [][]int) int {
    var count, length int = 0, len(M)

    var visited []bool = make([]bool, length)
    for i :=0; i< length; i++{
      if !visited[i] {
    	  dfs(M,i,visited)
        count++
    	}
    }
    return count
}

func dfs(M [][]int, i int, visited []bool) {
  visited[i] = true
  for j :=0; j< len(M); j++{
    if M[i][j] == 1 && !visited[j]{
      dfs(M,j,visited)
    }
  }
}

func main() {
   /* 数组 - 5 行 2 列*/
   var a [][]int= [][]int{ {1,1,0}, {1,1,0}, {0,0,1} }


   fmt.Println(findCircleNum(a))

   var a1 [][]int= [][]int{ {1,1,0}, {1,1,1}, {0,1,1} }


   fmt.Println(findCircleNum(a1))
   /* 输出数组元素 */
   // for  i := 0; i < len(a); i++ {
   //    for j := 0; j < len(a[0]); j++ {
   //       fmt.Printf("a[%d][%d] = %d\n", i,j, a[i][j] )
   //    }
   // }
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions