第十一周專案一(2) 二叉樹構造

2021-07-07 02:20:47 字數 1930 閱讀 3750

/*問題及**

*all right reserved.

*檔名稱:二叉樹的構造.cpp

*完成日期;2023年11月9日

*版本號;v1.0

*問題描述:由先序序列和中序序列構造二叉樹

由中序序列和後序序列構造二叉樹

*輸入描述:各個序列元素排列

*程式輸出:二叉樹的構造

*/

#include #include "btree.h"

int main()

#include #include #include "btree.h"

btnode *createbt1(char *pre,char *in,int n)

/*pre存放先序序列,in存放中序序列,n為二叉樹結點個數,

本演算法執行後返回構造的二叉鏈的根結點指標*/

btnode *createbt2(char *post,char *in,int n)

/*post存放後序序列,in存放中序序列,n為二叉樹結點個數,

本演算法執行後返回構造的二叉鏈的根結點指標*/

void levelorder(btnode *b)

if (p->rchild!=null) //有右孩子時將其進隊

}}void createbtnode(btnode *&b,char *str) //由str串建立二叉鏈}}

j++;

ch=str[j];

}}btnode *findnode(btnode *b,elemtype x) //返回data域為x的節點指標

}btnode *lchildnode(btnode *p) //返回*p節點的左孩子節點指標

btnode *rchildnode(btnode *p) //返回*p節點的右孩子節點指標

int btnodedepth(btnode *b) //求二叉樹b的深度

}void dispbtnode(btnode *b) //以括號表示法輸出二叉樹

}}void destroybtnode(btnode *&b) //銷毀二叉樹

}#define maxsize 100

typedef char elemtype;

typedef struct node

btnode;

void createbtnode(btnode *&b,char *str); //由str串建立二叉鏈

btnode *findnode(btnode *b,elemtype x); //返回data域為x的節點指標

btnode *lchildnode(btnode *p); //返回*p節點的左孩子節點指標

btnode *rchildnode(btnode *p); //返回*p節點的右孩子節點指標

int btnodedepth(btnode *b); //求二叉樹b的深度

void dispbtnode(btnode *b); //以括號表示法輸出二叉樹

void destroybtnode(btnode *&b); //銷毀二叉樹

void levelorder(btnode *b);

btnode *createbt1(char *pre,char *in,int n);

btnode *createbt2(char *post,char *in,int n);

執行結果

知識點總結

程式執行還是用遞迴,這一點毋庸置疑,但是理解的關鍵點不在於程式,而在於畫圖。

學習心得

抽象的東西讓它不抽象就是用腦子用手把抽象畫出來就不抽象了~~~嘻嘻~~~

第十一周 專案一(2) 二叉樹的構造

完成時間 2015年11月17號 題目描述 學會使用線序序列和中序序列構造二叉樹 1 演算法庫中標頭檔案部分 ifndef btree h included define btree h included define maxsize 100 typedef char elemtype typede...

第十一周專案2 二叉樹的構造

問題及 all right reserved.檔名稱 二叉樹的構造.cpp 完成日期 2015年11月9日 版本號 v1.0 問題描述 由先序序列和中序序列構造二叉樹 由中序序列和後序序列構造二叉樹 輸入描述 各個序列元素排列 程式輸出 二叉樹的構造 include include btree.h ...

第十一周專案2二叉樹構造演算法的驗證

問題及描述 定理 任何n n 0 個不同節點的二叉樹,都可由它的中序序列和先序序列唯一地確定 輸入描述 btree.h ifndef btree h included define btree h included define maxsize 100 typedef char elemtype t...