thisのような json ネストされたオブジェクトがあります。
私の場合、id
int型の一意のフィールドがあります(代わりにname
上記を使用してください)。これは二分木ではありませんが、より親子関係を表しています。say に根ざした子ツリー (子) を簡単に検索する方法が必要id = 121
でした。強引な方法で、ノードが見つかるまですべてのノードを比較し、子を返すことができます。しかし、{id, node} のマップを保持することを考えていました。たとえば{"121" : root[1][10]..[1]}
。これは、メモリの無駄遣いになる可能性があります (配列へのポインターを使用しない限り)。より良い方法があることに注意してください。
サーバーから何を送信するかを制御できるため、上記のデータ構造を拡張できます。ただし、クライアント側でノード ID に基づいて子ツリーを取得する簡単な方法が必要です。
編集:別のデータ構造、{id, []ids} のマップを保持することを検討しています。ここで、ids はルートからの順序付けられたパスです。より良い方法はありますか?