Tutorial Advent Calendar 22日目、エンジニアの吉野です。 先日、Rails でツリー構造に触れる機会があり、その際に初めて知ることが多くありました。今回はその際に得られた知見を共有させていただこうと思います。 ツリー構造って何?まず、ツリー構造(木構造)とはなんのことでしょうか? Wikipediaによると 木構造(きこうぞう)とは、グラフ理論の木の構造をしたデータ構造のこと。だそうです。下に示した組織図のように、ある要素から派生して階層構造が成り立っているものを、木が根から葉へと広がっていく様子になぞらえてツリー構造と呼んでいるわけですね。 身近なところでイメージしやすいのは、パソコンのフォルダで見られる階層構造もツリー構造にあたります。 RDB でツリー構造を実現する方法MySQL や PostgresQL といった、Web アプリケーション開発でよく用いられ