私はwikipeidaを読んでいて、Kruskalの疑似コードを次のように見つけました:
KRUSKAL(G):
foreach v ∈ G.V:
MAKE_SET(v)
G.E = sort(G.E)
i = 0
while (i != |V|-1):
pick the next (u, v) edge from sorted list of edges G.E
if (FIND_SET(u) != FIND_SET(v)):
UNION(u, v)
i = i + 1
私は何をしているのかよくわかりませんFIND_SET()
.Wikipediaには次の説明があります:
そのエッジが 2 つの異なるツリーを接続する場合、それをフォレストに追加し、2 つのツリーを 1 つのツリーに結合します。
2 つの異なるツリーが接続されているかどうかをチェックしていると思いますが、これは実際にはどういう意味ですか?