* 輸入描述: 無
* 輸出描述: 先序、中序、後序遍歷
標頭檔案:
#ifndef btree_h_included
#define btree_h_included
#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 preorder(btnode *b);
void inorder(btnode *b);
void postorder(btnode *b);
#endif // btree_h_included
原始檔:
#include
#include
#include "btree.h"
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) //銷毀二叉樹
}void preorder(btnode *b) //先序遍歷的遞迴演算法
}void inorder(btnode *b) //中序遍歷的遞迴演算法
}void postorder(btnode *b) //後序遍歷的遞迴演算法
}main函式:
心得體會:通過對二叉樹的先序,中序,後序遍歷的操作,讓我對先序,中序,後序這三種方式有了更加深刻的理解。
第二週專案2
程式的版權和版本宣告部分 檔名稱 score.cpp 作 者 完成日期 年 月 日 版本號 v1.0 輸入描述 已經在程式中初始化 問題描述 將學生成績資訊儲存在結構體陣列中,對結構體排序並輸出 輸出 按c 降序和按學號公升序排序後的學生成績單...
第二週專案二
檔名稱 test.cpp 作 者 李文賀 完成日期 2015年3月29日 版 本 號 v1.0 問題描述 輸入描述 程式輸出 結果 include includeusing namespace std class void setb double y void setc double z doubl...
第二週專案5
檔名稱 完成日期 2013年 3月 9日 版本號 v1.0 對任務及求解方法的描述部分 輸入描述 無 問題描述 點結構體與列舉 程式輸出 點的座標 問題分析 無 演算法設計 include includeusing namespace std enum symmetricstyle 分別表示按x軸,...