二叉樹題目

2021-08-17 22:25:11 字數 864 閱讀 8305

#include#include#includeusing namespace std;  

void print_postorder(int n, char *pre, char *in) //n代表節點個數,pre前 in 中 post後,不建樹用void

int main(void)

return 0;

} //根據後中求層次遍歷 (層次遍歷一般要先建樹)

/* 7

2 3 1 5 7 6 4

1 2 3 4 5 6 7

*/

#include#include#include#includeusing namespace std;

const int maxn = 35;

int post[maxn], in[maxn], lch[maxn], rch[maxn];

int build(int n, int *in, int *post) //建樹用int ,返回root

void bfs(int root) //層次遍歷,先把根節點 push進去,然後根據根節點不斷把左右孩子push進去,注意順序

} int main(void)

輸入某二叉樹的前序遍歷和中序遍歷的結果,請重建出該二叉樹。假設輸入的前序遍歷和中序遍歷的結果中都不含重複的數字。例如輸入前序遍歷序列和中序遍歷序列,則重建二叉樹並返回。

思路:這個比較麻煩, 但是按照他的函式體系也要寫出來啊- -

treenode* reconstructbinarytree(vectorpre,vectorvin)

二叉樹題目

struct treenode treenode left treenode right 遞迴解法 如果二叉樹為空,節點個數為0 如果二叉樹不為空,那麼節點個數 左子樹結點個數 右子樹結點個數 1 int getnodenum treenode root 如果二叉樹為空,二叉樹的深度為0 如果二叉樹...

二叉樹 二叉樹

題目描述 如上所示,由正整數1,2,3 組成了一顆特殊二叉樹。我們已知這個二叉樹的最後乙個結點是n。現在的問題是,結點m所在的子樹中一共包括多少個結點。比如,n 12,m 3那麼上圖中的結點13,14,15以及後面的結點都是不存在的,結點m所在子樹中包括的結點有3,6,7,12,因此結點m的所在子樹...

樹 二叉樹 滿二叉樹 完全二叉樹 完滿二叉樹

目錄名稱作用根 樹的頂端結點 孩子當遠離根 root 的時候,直接連線到另外乙個結點的結點被稱之為孩子 child 雙親相應地,另外乙個結點稱為孩子 child 的雙親 parent 兄弟具有同乙個雙親 parent 的孩子 child 之間互稱為兄弟 sibling 祖先結點的祖先 ancesto...