實驗內容:假設自上而下按層次,自左至右輸入每個結點的乙個三元組(n, p, l/r)。其中n為本結點的元素,p為其父結點,l指示n為p 的左孩子,r指示n為p的右孩子。試寫乙個建立二元樹在記憶體的雙鏈表示演算法,並實現先根、中根、後根以及層序遍歷演算法。
樣例輸出(二選一):
a-1-1
balgar
cbldbr
hgledl
fdr-1
1-1-1
21l31r
42l52r
63l73r
84l94r
106r
117l
-1
**樣例:
#include
#include
#include
#include
using namespace std;
#define maxsize 50
struct binarytree
;struct binarytree * create_bitree()/*二叉樹的建立*/
}return t;
}void preorder(struct binarytree *bt)
}void inorder(struct binarytree *bt)
}void postorder(struct binarytree *bt)
}void levelorder(struct binarytree *bt)
if (q[front]->r!=null)
front++;}}
int main() }}
二叉樹及其應用 二叉樹遍歷
給定二叉樹的廣義表表示,構造二叉樹並輸出二叉樹的四種遍歷順序。輸入說明 輸入僅一行,該行僅由 以及大小寫字元構成的二叉樹的廣義表表示,字串長度不超過100。輸出說明 在接下來的四行中依行輸出二叉樹的四種遍歷 輸入樣列 a b d,c e,f h 輸出樣列 abdcefh dbaecfh dbehfc...
二叉樹及其應用 二叉樹建立
給定二叉樹的資料型別如下 typedef char element struct node typedef struct node btnode typedef struct node btree 二叉樹建立i 完成btree create btree char s 函式,該函式由字串s建立一顆二叉...
二叉樹及其應用 二叉樹特徵值與銷毀
給定二叉樹的資料型別如下 typedef char element struct node typedef struct node btnode typedef struct node btree 二叉樹輸出 完成void printbtree btree root 函式,該函式輸出二叉樹的廣義表表...