国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

C#使用前序遍歷、中序遍歷和后序遍歷打印二叉樹的方法

2020-01-24 01:54:39
字體:
來源:轉載
供稿:網友

本文實例講述了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#程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 揭西县| 通州市| 天镇县| 革吉县| 章丘市| 秦安县| 仪陇县| 基隆市| 黄骅市| 漳浦县| 剑阁县| 乐都县| 丹棱县| 丹凤县| 荔波县| 宁津县| 望江县| 桑日县| 双鸭山市| 葫芦岛市| 大名县| 富锦市| 沭阳县| 铜鼓县| 聊城市| 平顶山市| 奉节县| 拉孜县| 苍梧县| 民丰县| 广南县| 临邑县| 庄浪县| 镇雄县| 宁都县| 临夏县| 河津市| 横峰县| 收藏| 台东市| 镶黄旗|