先中序建二叉樹

2021-08-10 08:10:55 字數 1128 閱讀 6262

二叉樹的順序

可以根據中序和先序/後序建立二叉樹,但是必須要有中序,因為只有這樣可以劃分左右子樹,遞迴的完成序列的訪問。

先序和中序建立二叉樹

#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...