JSON形式のDAGがあり、各ノードはエントリです。名前と2つの配列があります。1つの配列は、矢印が入ってくる他のノード用であり、別の配列は、このノードが向けられているノード用です(出て行く矢印)。
したがって、たとえば:
{
'id': 'A',
'connected_from' : ['B','C'],
'connects_to' : ['D','E']
}
そして、これらのノードのコレクションがあり、それらがすべて一緒にDAGを形成します。
ノードを構造体にマップして、これらのノードを保持したいと思います。ここで、idは単なる文字列であり、配列はこの構造体のポインターのベクトルになります。
struct node {
string id;
vector<node*> connected_from;
vector<node*> connected_to;
}
JSONの配列でノードエントリを「id」として、そのノードを保持している正しい構造体へのポインタに変換するにはどうすればよいですか?
明らかなアプローチの1つは、キーと値のペアのマップを作成することです。ここで、key = id、value =そのidを持つ構造体へのポインターであり、ルックアップを実行しますが、より良い方法はありますか?