有没有办法this但是对于具有未知嵌套级别的数据结构?另外,虽然我认为在另一个问题中也是如此,但每个级别都有多个条目(假设它只有一个,或者为零)。
此外,是否有一种很好的方法来存储这样的数据结构,以便可以轻松找到每个对象的父级?我在考虑类似锯齿状数组的东西,但这似乎很难在运行时生成,因为我不知道嵌套有多深。像树视图这样的结构的东西是理想的,但如果我只是将它用于数据存储而不是视觉部分,我不想实现控件。
作为最后的手段,我正在考虑编写自己的类来存储数据,但如果我不需要,我不想这样做。
答案 0 :(得分:0)
您是否正在寻找带有父引用的n-ary树?
class Node
{
public Node Parent { get; }
public IEnumerable<Node> Children { get; }
}
IEnumerable<Node> Flatten(Node node)
{
yield return node;
foreach (var child in node.Children)
{
yield return Flatten(child);
}
}