求一个二维数组转结构树的高效算法,C#

发布网友

我来回答

1个回答

热心网友

用递归算,不管下面有多少个节点都给你算出来,而且效率也高。 给你个例子 好好看下 改下。
private void AddTree(string ParentName, TreeNode node)
{
DataView dvTree = new DataView(dt);
dvTree.RowFilter = "[TopGovName] = '" + ParentName + "'";
foreach (DataRowView Row in dvTree)
{
TreeNode Node = node;
if (node == null)//如果根节点已经添加完成
{
Node.Text = Row["GovName"].ToString();
Node.Name = Row["sid"].ToString();
treeView1.SelectedNode.Nodes.Add(Node);
AddTree(Node.Text, Node);
}
else//进行子节点的添加
{
TreeNode nextNode = new TreeNode();
nextNode.Text = Row["GovName"].ToString();
nextNode.Name = Row["sid"].ToString();
Node.Nodes.Add(nextNode);
}
}
}

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com