これを解決するための適切なアルゴリズムを見つけようとしています: いくつかの (有向グラフ) ノードがあるとします。各ノードには、親がある場合とない場合があります (つまり、最大で 1 つの親)。ノードの表記を (id, id_parent) とします。一部のノードは (id_i, NULL) になりますが、ノード (id_j, id_i) は id_i の「息子」として存在します。これらのノードの配列を特定の順序で持っているので、それらを次の順序で並べ替えたいと思います: 親-息子-息子の息子-息子-息子の息子など.
例: ノード (1, NULL)、(2,NULL)、(3,1)、(4,3)、(5,2)、(6,3)
ソートされた配列は (1,NULL)、(3,1)、(4,3)、(6,3)、(2, NULL)、(5,2) になります。一種の詳細なツリー探索。
これを達成するのに適したアルゴリズムはどれですか? ありがとう