C#使用前序遍历、中序遍历和后序遍历打印二叉树的方法
程序员文章站
2022-07-01 17:12:44
本文实例讲述了c#使用前序遍历、中序遍历和后序遍历打印二叉树的方法。分享给大家供大家参考。具体实现方法如下:
public class binarytreenod...
本文实例讲述了c#使用前序遍历、中序遍历和后序遍历打印二叉树的方法。分享给大家供大家参考。具体实现方法如下:
public class binarytreenode { public binarytreenode left { get; set; } public binarytreenode right { get; set; } public int data { get; set; } public binarytreenode(int data) { this.data = data; } } public enum treetraversal { preorder, inorder, postorder } public void printtree(binarytreenode root, treetraversal treetraversal) { action<int> printvalue = delegate(int v) { console.write(v + " "); }; switch (treetraversal) { case treetraversal.preorder: preordertraversal(printvalue, root); break; case treetraversal.inorder: inordertraversal(printvalue, root); break; case treetraversal.postorder: postordertraversal(printvalue, root); break; default: break; } } public void preordertraversal(action<int> action, binarytreenode root) { if (root == null) return; action(root.data); preordertraversal(action, root.left); preordertraversal(action, root.right); } public void inordertraversal(action<int> action, binarytreenode root) { if (root == null) return; inordertraversal(action, root.left); action(root.data); inordertraversal(action, root.right); } public void postordertraversal(action<int> action, binarytreenode root) { if (root == null) return; postordertraversal(action, root.left); postordertraversal(action, root.right); action(root.data); }
希望本文所述对大家的c#程序设计有所帮助。
上一篇: C#创建二叉搜索树的方法
下一篇: C#快速排序算法实例分析
推荐阅读
-
Python利用前序和中序遍历结果重建二叉树的方法
-
Python实现输入二叉树的先序和中序遍历,再输出后序遍历操作示例
-
PHP实现二叉树深度优先遍历(前序、中序、后序)和广度优先遍历(层次)实例详解
-
[PHP] 算法-根据前序和中序遍历结果重建二叉树的PHP实现
-
【算法】二叉树的前序、中序、后序、层序遍历和还原。
-
Python二叉树的遍历操作示例【前序遍历,中序遍历,后序遍历,层序遍历】
-
JavaScript实现二叉树的先序、中序及后序遍历方法详解
-
PHP根据树的前序遍历和中序遍历构造树并输出后序遍历的方法
-
python实现二叉树的层序、前序、中序、后序、之字形遍历
-
C#使用前序遍历、中序遍历和后序遍历打印二叉树的方法