本文整理汇总了C#中BinaryTree.EachPostOrder方法的典型用法代码示例。如果您正苦于以下问题:C# BinaryTree.EachPostOrder方法的具体用法?C# BinaryTree.EachPostOrder怎么用?C# BinaryTree.EachPostOrder使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类BinaryTree
的用法示例。
在下文中一共展示了BinaryTree.EachPostOrder方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Main
static void Main()
{
var tree =
new Tree<int>(7,
new Tree<int>(19,
new Tree<int>(1),
new Tree<int>(12),
new Tree<int>(31)),
new Tree<int>(21),
new Tree<int>(14,
new Tree<int>(23),
new Tree<int>(6)));
Console.WriteLine("Tree (indented):");
tree.Print();
Console.Write("Tree nodes:");
tree.Each(c => Console.Write(" " + c));
Console.WriteLine();
Console.WriteLine();
var binaryTree =
new BinaryTree<string>("*",
new BinaryTree<string>("+",
new BinaryTree<string>("3"),
new BinaryTree<string>("2")),
new BinaryTree<string>("-",
new BinaryTree<string>("9"),
new BinaryTree<string>("6")));
Console.WriteLine("Binary tree (indented, pre-order):");
binaryTree.PrintIndentedPreOrder();
Console.Write("Binary tree nodes (in-order):");
binaryTree.EachInOrder(c => Console.Write(" " + c));
Console.WriteLine();
Console.Write("Binary tree nodes (post-order):");
binaryTree.EachPostOrder(c => Console.Write(" " + c));
Console.WriteLine();
Console.ReadKey();
}
示例2: BuildBinaryTree_ForEachTraversal_PostOrder_ShouldWorkCorrectly
public void BuildBinaryTree_ForEachTraversal_PostOrder_ShouldWorkCorrectly()
{
// Arrange
var binaryTree =
new BinaryTree<string>("*",
new BinaryTree<string>("+",
new BinaryTree<string>("3"),
new BinaryTree<string>("2")),
new BinaryTree<string>("-",
new BinaryTree<string>("9"),
new BinaryTree<string>("6")));
// Act
var nodes = new List<string>();
binaryTree.EachPostOrder(nodes.Add);
// Assert
var expectedNodes = new string[] { "3", "2", "+", "9", "6", "-", "*" };
CollectionAssert.AreEqual(expectedNodes, nodes);
}