隣接行列
次のコードを実行したときの出力として、正しいものを1つ選べ。
import networkx as nx
G = nx.path_graph(3)
print(nx.to_numpy_array(G).astype(int).tolist())
- A
[[0, 1, 1], [1, 0, 1], [1, 1, 0]] - B
[[1, 0, 0], [0, 1, 0], [0, 0, 1]] - C
[[0, 1, 0], [0, 0, 1], [0, 0, 0]] - D
[[0, 1, 0], [1, 0, 1], [0, 1, 0]]
正解と解説を見る
正解:D
隣接行列は、節点どうしが辺でつながっていれば 1(重みがあればその値)にした正方行列。無向グラフでは対称になる。
| 順 | 実行する行 | 実行後の変数 |
|---|---|---|
| 1 | `import networkx as nx` | — |
| 2 | `G = nx.path_graph(3)` | — |
| 3 | `print(nx.to_numpy_array(G).astype(int).tolist…` | — |
| 結果 | 実際の出力 | [[0, 1, 0], [1, 0, 1], [0, 1, 0]] |
- A
誤り。0 と 2 は直接つながっていない。
- B
誤り。単位行列。
- C
誤り。無向グラフの隣接行列は対称になる。
- D
正しい。0−1−2 とつながる無向グラフの隣接行列は、対称で、つながっていれば 1。
このサイトの問題は、各試験の公式に示された出題範囲に沿って作ったオリジナルの模擬問題です。本試験の問題ではありません。一般社団法人Pythonエンジニア育成推進協会の公式サービスではありません。