У меня есть класс (Node), который имеет свойство подузлами который является списком класса NodeПоиск класса в списке
У меня есть список узлов (из которых каждый узел может иметь или не иметь список SubNodes внутри себя) Мне нужно найти узел в списке/узлах узла.
Я попытался выполнить поиск в списке, но это будет искать только классы Node в списке, а не список SubNodes. Посмотрел библиотеку C5 и несколько бинарных деревьев, но не нашел ничего подходящего. любой совет?
Класс
public class Node
{
public Guid Id { get; set; }
public DateTime Created { get; set; }
public List<Node> Nodes { get;set;}
}
Функция (результат является конечным результатом)
private void GetRecersive(List<Node> list, ref List<Node> result)
{
foreach (Node item in list)
{
if (item.ParentId.Equals(Guid.Empty))
{
result.Add(item);
}
else
{
result.ForEach(x => x.FindNodes(y => y.Id.Equals(item.ParentId)).FirstOrDefault().Nodes.Add(item));
}
List<Node> nodes = GetNodesByParent(item.Id);
GetRecersive(nodes, ref result);
}
}
Вам не нужно передавать список результат с ключевым словом ref. –
empi