Можно ли использовать класс LinkedList в MSDN, чтобы создать список, в котором один родительский узел указывает на несколько дочерних элементов? - PullRequest
1 голос
/ 19 декабря 2011

Я пытаюсь сделать дерево с C #.Во многих публикациях рекомендуется использовать связанный список, например класс LinkedList на MSDN , который является частью .NET Framework.Но похоже, что каждый MSDN LinkedListNode может ссылаться только на один дочерний узел (в этом случае список будет выглядеть как линия, а не как ветвящееся дерево, за которое я стреляю).Я что-то пропустил?Был еще один пост на эту тему, и люди посоветовали постеру просто создать свою собственную версию того, что, кажется, называется многозвенным списком ( Как создать несколько узлов в связанном списке, а затем выполнить итерацию по узлам )

Не пора ли оторваться от корабля и попробовать сделать свое дерево?Должен ли я создать новый класс многосвязных узлов, который наследуется от LinkedListNode?

Ответы [ 2 ]

1 голос
/ 19 декабря 2011

В стандартных библиотеках классов нет деревьев.Вам нужно написать свою собственную или найти чужую реализацию, которую вы можете использовать.

Я не думаю, что вы что-то получите, унаследовав от LinkedListNode<T>.Семантика различна.

0 голосов
/ 19 декабря 2011

Создайте свое собственное дерево - http://dvanderboom.wordpress.com/2008/03/15/treet-implementing-a-non-binary-tree-in-c/

...