第10周專案1 驗證演算法

2021-08-10 20:44:02 字數 1662 閱讀 4900

/*  

*檔名稱:專案1-驗證演算法(1)

*作 者:zangyunpeng

*完成日期:2023年11月16日

*版 本 號:v1.0

* 問題:

層次遍歷演算法的驗證

*/

head.h
#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);  //銷毀二叉樹

#endif // btree_h_included

btree.h
#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)   //銷毀二叉樹

}

main.h
#include #include "btree.h"

void levelorder(btnode *b)

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

知識點總結:

層次遍歷演算法

學習心得:遍歷方法很多且抽象,通過程式執行得出結果,使的知識點更加具體,便於理解。

第14周專案1 驗證演算法

問題及 檔名稱 lulu.cpp 完成日期 2015年11月30日 版本號 v1.o 作為測試序列,分別對查詢90 47 100進行測試。include define maxl 100 typedef int keytype typedef char infotype 10 typedef stru...

第15周 專案1 驗證演算法

問題及 檔名稱 test.cpp 作 者 焦夢真 完成日期 2015年12月7日 版 本 號 v1.0 問題描述 認真閱讀並驗證雜湊表實施查詢的相關演算法,寫程式建立序列的雜湊表,裝填因子定為0.8,雜湊函式為h k key p,p 11,採用線性探查法解決衝突。測試中 1 輸出建立的雜湊表 2 完...

第15周專案1驗證演算法

問題及 檔名稱 專案1.cpp 完成日期 2015.12.11 問題描述 1 認真閱讀並驗證雜湊表實施查詢的相關演算法,寫程式建立序列的雜湊表,裝填因子定為0.8,雜湊函式為h k key p,p 11,採用線性探查法解決衝突。測試中 1 輸出建立的雜湊表 2 完成關鍵字為29的元素的查詢 3 在上...