二叉樹先序遍歷和中序遍歷確定二叉樹

2021-09-29 07:25:08 字數 438 閱讀 5510

//由於希望得到一顆二叉樹,

//所以返回值型別是乙個指向根節點的指標

//表示得到了一顆二叉樹

btnode *creatbt(char pre,char int,int l1,int r1,int l2,int r2)

//引數列表有傳入的先序序列和後序序列和他們的開頭和結尾

//由於是遞迴函式,先寫乙個遞迴出口,顯然是要處理的序列長度為零的時候即l1>r1

//得到兩部分子序列,下面遞迴的進行

s->ichild=creatbt(pre,int,l1+1,r1+i-l2,l2,i-1);

s->rchild=creatbt(pre,int,l1+i-l2+1,r1,i+1,r2);

//最後返回指向根節點的指標

return s;

}

二叉樹先序遍歷 中序遍歷 後序遍歷

輸入二叉樹的先序遍歷序列和中序遍歷序列,輸出該二叉樹的後序遍歷序列。非建二叉樹版本 include includeusing namespace std string preord,inord void rebuild int preleft,int preright,int inleft,int ...

二叉樹 先序遍歷 中序遍歷 後續遍歷

package com.example.ljia.structure.tree import lombok.data author samlai description 遞迴 二叉樹 先序遍歷 中序遍歷 後續遍歷 先序遍歷 根 左 右 中序遍歷 左 根 右 後序遍歷 左 右 根 發現規律 這裡的順序...

二叉樹先序遍歷 後序遍歷 中序遍歷

從根部 a 開始,然後開始遍歷左子樹,直接找到 b 檢視 b 有沒有左子樹,有 d,再檢視 d 有沒有子樹,沒有,d 已經是葉子,所以第二個是 d。倒回去,取中 b,第三個數是 b。檢視 b 有沒有右子樹,有 e 檢視 e 有沒有子樹,有 g 左 h 右 所有後面三個數是 egh 先查左子樹,存在繼...