//**改編自《挑戰程式設計競賽2》
目標:用三種遍歷方式列印出樹
由於我想偷懶易於理解我就不注釋了
輸入樣例:
90 1 4
1 2 3
2 -1 -1
3 -1 -1
4 5 8
5 6 7
6 -1 -1
7 -1 -1
8 -1 -1
輸出樣例:
前序遍歷的結果是:
0 1 2 3 4 5 6 7 8
中序遍歷的結果是:
2 1 3 0 6 5 7 4 8
後序遍歷的結果是:
2 3 1 6 7 5 8 4 0
#include#include#define max 10000
#define nil -1
using namespace std;
struct node;
node t[max];
int n;
void preparse(int u)
for(i=0;icout<<"前序遍歷的結果是:"
cout
cout
cout
}
資料結構 二叉樹的前中後序遍歷
在電腦科學裡,樹的遍歷是指通過一種方法按照一定的順序訪問一顆樹的過程。對於二叉樹,樹的遍歷通常有四種 先序遍歷 中序遍歷 後序遍歷 廣度優先遍歷。前三種亦統稱深度優先遍歷 對於多叉樹,樹的遍歷通常有兩種 深度優先遍歷 廣度優先遍歷。在學習前面三種深度優先遍歷之前,很有必要了解它們之間到底是怎麼遍歷的...
資料結構 二叉樹的前 中 後序遍歷
遞迴實現前序遍歷 public static void preorderrecur node head system.out.println head preorderrecur head.left preorderrecur head.right 非遞迴實現前序遍歷 public static v...
二叉樹的前中後序遍歷
秋招記錄 對一棵二叉樹進行遍歷,我們可以採取3種順序進行遍歷,分別是前序遍歷 中序遍歷和後序遍歷。這三種方式是以訪問父節點的順序來進行命名的。假設父節點是n,左節點是l,右節點是r,那麼對應的訪問遍歷順序如下 前序遍歷 中左右 n l r 中序遍歷 左中右 l n r 後序遍歷 左右中 l r n ...