用括號法遞迴建立二叉樹

2021-08-20 20:59:29 字數 633 閱讀 2444

描述

如果用大寫字母標識二叉樹節點,則一棵二叉樹可以用以下字母序列建立,#表示空節點。試寫乙個遞迴演算法,有這種形式的字串行,建立相應的二叉樹的二叉鍊錶儲存結構,並按層次遍歷輸出。如一棵二叉樹可表示為:a(b(#,d),c(e(#,f),#))

輸入按題中要求,用括號法輸入二叉樹序列,#表示空節點

輸出按層次遍歷建立好的二叉樹並輸出

輸入樣例

a(b(#,d),c(e(#,f),#))

輸出樣例

abcdef

#include #include #include #include #include #include using namespace std;

typedef struct bintreenodebintreenode,*bintree;

int findcomma(char s, int len)

return i;

}bintree create(char s, int len)

else

return root;

}void levelprint(bintree t)

printf("\n");

}int main()

用遞迴方法建立二叉樹

2012 11 01 20 20 8624人閱讀收藏 舉報 資料結構與演算法 58 假設二叉樹為 ab c d e 因為程式中要知道葉子結點 終點 所以要將上面的二叉樹變成擴充套件二叉樹 把葉子結點的孩子補成 用作標記 擴充套件後就變成了 ab c d e 那麼,在輸入的時候,需要輸入 ab d c...

用遞迴方法建立二叉樹

假設二叉樹為 ab c d e 因為程式中要知道葉子結點 終點 所以要將上面的二叉樹變成擴充套件二叉樹 把葉子結點的孩子補成 用作標記 擴充套件後就變成了 ab c d e 那麼,在輸入的時候,需要輸入 ab d c e 注意,輸入後,按enter鍵即可 程式如下 cpp view plain co...

遞迴建立二叉樹

通常對於二叉樹的建立採用兩種方式 遞迴建立和非遞迴建立。本文在這裡採用遞迴方法建立二叉樹,並且敘述有關二叉樹三種遍歷方式以及求有關節點的相關問題等。首先定義乙個有關二叉樹的結構體,結構體中包含整型的data,以及結構體型別的左右子樹left和right。然後是建立有關二叉樹的結點,相關 如下 typ...