C#将List转换为Branch
本文关键字:Branch 转换 List | 更新日期: 2023-09-27 18:24:36
我在C#中有一个字符串列表:
List<string> { "A", "B", "C", "D" };
这些字符串是产品类别的"标题"。
我需要将它们转换成这样的节点分支:
A > B > C > D
列表中项目的顺序决定了它们在分支中的位置,即A是根,D是叶节点。
我的对象名为WebBrowseNode
,它具有以下属性:
string Title
(string
)List<WebBrowseNode> Children
我已经做了至少一个小时了,找不到合适的算法来做这件事。
这个想法是从列表的末尾开始。
WebBrowseNode lastNode = null;
for (int numItem = list.Count - 1; numItem >= 0; numItem--) // Go from the end to the beginning of the list
{
string title = myStringList[numItem];
lastNode = new WebBrowseNode
{
Title = title,
Children = { lastNode } // Adds lastNode to the Children list
};
}
WebBrowseNode root = lastNode;