二叉樹樹的基本演算法

2021-06-15 02:37:27 字數 818 閱讀 1099

#includeusing namespace std;

#define ok 1

#define error 0

#define overflow -2

typedef char elemtype;

const int maxlength = 30;//結點個數不超過30個

typedef struct bitreenodebitreenode,*bitree;

void createbitree(bitree & t)

}//createbitree

void preorder(bitree &t)//遞迴函式:先序遍歷以t為根的二叉樹

}void inorder(bitree &t)//遞迴函式:中序遍歷以t為根的二叉樹

}void postorder(bitree &t)//遞迴函式:後序遍歷以t為根的二叉樹

}void levelorder(bitree t) //層序遍歷

while(front!=rear)

if(p->rchild) //右孩子不為空,入隊

}}bool completetree(bitree t) //層序遍歷是否為完全二叉樹

else

}} return true; }}

int depthtree(bitree t) //樹的深度

return depthval;

}int countnode(bitree t) //樹的結點數

}int countleaf(bitree t) //樹的葉子數

}

二叉樹的基本演算法

二叉樹的遍歷 求二叉樹的深度 多叉樹轉二叉樹 輸入乙個二叉樹的先序串,輸出以括號形式表示的而叉樹。如果結點的子樹為空,先序串的對應位置為空格符。第1行 先序串 結點數 26,以單個大寫字母表示 第1行 二叉樹的括號形式ab c da b c d include include char s 100 ...

樹 二叉樹 滿二叉樹 完全二叉樹 完滿二叉樹

目錄名稱作用根 樹的頂端結點 孩子當遠離根 root 的時候,直接連線到另外乙個結點的結點被稱之為孩子 child 雙親相應地,另外乙個結點稱為孩子 child 的雙親 parent 兄弟具有同乙個雙親 parent 的孩子 child 之間互稱為兄弟 sibling 祖先結點的祖先 ancesto...

二叉樹 二叉樹

題目描述 如上所示,由正整數1,2,3 組成了一顆特殊二叉樹。我們已知這個二叉樹的最後乙個結點是n。現在的問題是,結點m所在的子樹中一共包括多少個結點。比如,n 12,m 3那麼上圖中的結點13,14,15以及後面的結點都是不存在的,結點m所在子樹中包括的結點有3,6,7,12,因此結點m的所在子樹...