在C#中,遍歷TreeNode的方法有以下幾種:
void Traverse(TreeNode node)
{
if(node != null)
{
// 處理當前節點
Console.WriteLine(node.Value);
// 遍歷左子節點
Traverse(node.Left);
// 遍歷右子節點
Traverse(node.Right);
}
}
void PreOrderTraverse(TreeNode node)
{
if(node != null)
{
// 處理當前節點
Console.WriteLine(node.Value);
// 遍歷左子節點
PreOrderTraverse(node.Left);
// 遍歷右子節點
PreOrderTraverse(node.Right);
}
}
void InOrderTraverse(TreeNode node)
{
if(node != null)
{
// 遍歷左子節點
InOrderTraverse(node.Left);
// 處理當前節點
Console.WriteLine(node.Value);
// 遍歷右子節點
InOrderTraverse(node.Right);
}
}
void PostOrderTraverse(TreeNode node)
{
if(node != null)
{
// 遍歷左子節點
PostOrderTraverse(node.Left);
// 遍歷右子節點
PostOrderTraverse(node.Right);
// 處理當前節點
Console.WriteLine(node.Value);
}
}
這些方法可以根據具體的需求選擇使用,來遍歷TreeNode中的節點。