1

ノードを追加する関数があります:

public void AddNode(Guid ID, string name,  Guid parentNode)
{
  MyNode node = new MyNode ();
  node.ID = ID;
  node.Name = name;
  node.ParentNode = parentNode;

  AddNode(node);
}

最下位ノードを見つける関数を実行するにはどうすればよいですか?

4

2 に答える 2

1

オーバーロードされた関数 AddNode(Node) のコードがなければ、推測することしかできません。

親ノードへのリンクのみを保存する場合、ツリーを下に移動することはできません。そのためには、子へのリンクを取得する必要があるからです。子ノードへのリンクも保存することでツリーを二重にリンクすることも、子ノードへのリンクを保存することもできます。それができたら、再帰的な幅優先検索または深さ優先検索をルートから開始して、目的のノードを見つけることができます。

于 2013-06-26T12:00:55.150 に答える
0

ルートノードで子ノードを見つける方法[TreeView]

ポインターのこのリンクを試して、子のないノードを見つけたら、使用したいものをリスト/辞書/などに配置します。

于 2013-06-26T12:09:38.457 に答える