組み込み開発のためのPython · レッスン 156 / 220

グラフで接続関係を表す

グラフは頂点と辺で接続関係を表し、有向・無向、重み付きなどの種類があります。隣接リストは疎なグラフの保存に向きます。

グラフは頂点と辺で接続関係を表し、有向・無向、重み付きなどの種類があります。隣接リストは疎なグラフの保存に向きます。 仕組みだけでなく、検証方法と運用上の注意も具体例で確認します。

基本の考え方

グラフは頂点と辺で接続関係を表し、有向・無向、重み付きなどの種類があります。隣接リストは疎なグラフの保存に向きます。

安全に試すための確認

計算量だけでなく入力条件、重複値、空データ、最悪ケースを確かめます。組み込み用途ではメモリ上限と実行時間を実測し、標準ライブラリの利用も検討してください。

コード例

手元のPython環境に貼り付ける前に、使用しているPythonの版と対象ライブラリの対応を確認してください。

graph = {"A": ["B", "C"], "B": ["A"], "C": ["A"]}
print(graph["A"])

手を動かす課題

基板上のデバイス接続をグラフにし、特定のノードから到達できるノードを列挙してください。

参考資料

「データ構造とアルゴリズム」の章一覧へ