跳过正文
  1. 全部/
  2. 笔记/
  3. LeetCode/

017 并查集

const MAXN = 1000001

var arr [MAXN]int
func build() {
    for i := 0; i < MAXN; i++ {
        arr[i] = i
    }
}

func find(i int) int {
    if arr[i] != i {
        arr[i] = find(arr[i])
    }
    return arr[i]
}

func isSameSet(a, b int) bool {
    return find(a) == find(b)
}

func union(a, b int) {
    arr[find(a)] = find(b)
}
Reply by Email