二叉樹的順序
可以根據中序和先序/後序建立二叉樹,但是必須要有中序,因為只有這樣可以劃分左右子樹,遞迴的完成序列的訪問。
先序和中序建立二叉樹
#include
#include
#include
typedef
char elemtype;
typedef
struct node
*bitree, *binode;
int n;
char str1[256];
char str2[256];
bitree creattree(int s1, int t1, int s2, int t2)
if(i<=t2)
else
return0;}
int depth(bitree root)
else
return depth;
}int main()
return
0;}
中序和後序建立二叉樹
#include
#include
#include
typedef
char elemtype;
typedef
struct node
*bitree, binode;
char str1[345];
char str2[345];
bitree creattree(int s1, int t1, int s2, int t2)
if(i<=t1)
else
return0;}
int fow(bitree root)
return0;}
int depth(bitree root)
else
return depth;
}int main()
return
0;}
補充一點:忘記了strlen()和sizeof()的作用,浪費了大量時間,在建立二叉樹的過程中。 先序中序重建二叉樹
includeusing namespace std vectorpre,in int p typedef struct node vectorpost int rec int l,int r 通過前序和後序得到樹 int main for int i 0 i tem in.push back te...
先序中序轉二叉樹
在紙上計算一下他們轉的過程就很容易發現規律 寫程式更簡單,只需要計算出每個子樹的起始位置 計算的時候使用靜態鍊錶更為方便 include include include include include using namespace std struct node vector int in,pre...
二叉樹 先序 中序 後序
同學整理的,順便傳上分享下 一,已知先序和中序 求後序 1 include2 include3 include4 using namespace std 5char s1 10 s2 10 ans 10 6 int o 0 7 void tree int n char s1 char s2 char...