Rust でグラフ構造や木構造を作る

プログラムを書いていると何かしら木構造っぽいものやグラフっぽいものを作りたい場面が多々あると思います. Rust は所有権や Size の都合で,これらを作ろうと思うと地味にハマるのでまとめておきます. Rust で木構造 最も単純な木構造は Rust だと enum Tree<T> { Leaf(T), Node(Box<Tree<T>>, Box<Tree<T>>), } といった形で表せます. R</tree<t></tree<t></t>…