同一型のみによるTree構造は結構簡単。
Dot(節点)とLine(辺)の2種類のクラスからなるTreeはちょっと工夫する必要がある。
case class Dot[D, L](value: D, lines: Line[L, D]*)
case class Line[L, D](value: L, dot: Dot[D, L])
型クラスを使うとこういう構造が表しやすい。
More than 5 years have passed since last update.
同一型のみによるTree構造は結構簡単。
Dot(節点)とLine(辺)の2種類のクラスからなるTreeはちょっと工夫する必要がある。
case class Dot[D, L](value: D, lines: Line[L, D]*)
case class Line[L, D](value: L, dot: Dot[D, L])
型クラスを使うとこういう構造が表しやすい。
Register as a new user and use Qiita more conveniently