990. Satisfiability of Equality Equations - notruilin/LeetCode GitHub Wiki
- union-find algorithm in Python
parent = [x for x in range(27)]
rank = [0 for _ in range(27)]
def find(x):
if parent[x] == x:
return x
else:
parent[x] = find(parent[x])
return parent[x]
def unite(x, y):
x = find(x)
y = find(y)
if rank[x] < rank[y]:
parent[x] = y
else:
parent[y] = x
if rank[x] == rank[y]:
rank[x] += 1
def same(x, y):
if find(x) == find(y):
return True
return False
- Initialize dictionary in Python
dict = {char: char for char in string.lowercase}
{'a': 'a', 'c': 'c', 'b': 'b', 'e': 'e', 'd': 'd', 'g': 'g', 'f': 'f', 'i': 'i', 'h': 'h', 'k': 'k', 'j': 'j', 'm': 'm', 'l': 'l', 'o': 'o', 'n': 'n', 'q': 'q', 'p': 'p', 's': 's', 'r': 'r', 'u': 'u', 't': 't', 'w': 'w', 'v': 'v', 'y': 'y', 'x': 'x', 'z': 'z'}
dict = {char: 0 for char in string.lowercase}
{'a': 0, 'c': 0, 'b': 0, 'e': 0, 'd': 0, 'g': 0, 'f': 0, 'i': 0, 'h': 0, 'k': 0, 'j': 0, 'm': 0, 'l': 0, 'o': 0, 'n': 0, 'q': 0, 'p': 0, 's': 0, 'r': 0, 'u': 0, 't': 0, 'w': 0, 'v': 0, 'y': 0, 'x': 0, 'z': 0}