指定されたエッジのリストからスパニング ツリー リストを出力する方法を見つけようとしています。たとえば、私が読んだ場合:
0 1
2 1
0 2
1 3
次のスパニング ツリー リストを出力したい:
[[1]、[0,2,3]、[1]、[1]]
次のコードを使用して隣接リストを作成する方法を知っています。
n = int(input("Enter number of vertices: "))
adjList = [[] for i in range(n)]
with open("graph.txt") as edges:
for line in edges:
line = line.replace("\n", "").split(" ")
adjList[int(line[0])].append(int(line[1]))
adjList[int(line[1])].append(int(line[0]))
print(l)
ただし、スパニング ツリーの作成は別の話です。スパニング ツリーが重み付けされていないことを考えると、ここでプリムのアルゴリズムのいくつかのバージョンを使用する必要があるかどうかわかりません。
どんな助けでも大歓迎です!