- 1、本文档共33页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
二叉树的建立与遍历,叶子结点的数目以及树的深度的求法,采用递归求解(国外英语资料)
二叉树的建立与遍历,叶子结点的数目以及树的深度的求法,采用递归求解(国外英语资料)
The establishment of binary tree and traversal, the method to get the number of leaf nodes and the depth of the tree, the recursive solution. TXT what I dont entertain wild hope, only hope that after you as a woman. When I was a child, I could be a man like a man. I wrote it personally, its a very simple record, hehe.
My baidu space: /heihei_shaweiwei/blog/item/eec5a3de6bb28c0462279805.html
# include iostream
Using namespace STD.
/ / the structure of the tree
Typedef struct _binTree
{
Char data;
_binTree * lNode.
} binTree;
/ / create a binary tree
Void createT (binTree * rootNode, binTree * tempNode)
{
If (rootNode = = NULL)
{
RootNode = tempNode; The return;
}
The else
{
If (rootnode- data tempnode- data)
{
CreateT (rootnode- lNode, tempNode);
}
Else if (rootnode- data tempnode- data)
{
CreateT (rootNode - rNode, tempNode);
}
}
}
/ / print the number that has been created
Void printT (binTree * rootNode)
{
If (rootNode = = NULL) return;
The else
{
PrintT (rootNode - lNode);
Cout rootNode - data ;
PrintT (rootNode - rNode);
}
}
/ / first order traverses the binary tree
Void preTraverse (binTree * rootNode)
{
If (rootNode = = NULL) return;
The else
{
Cout rootNode - data ;
PrintT (rootNode - lNode);
PrintT (rootNode - rNode);
}
}
/ / in order to traverse the binary tree
Void midTraverse (binTree * rootNode)
{
If (rootNode = = NULL) return;
The else
{
PrintT (rootNode - lNode);
Cout rootNode - data ;
PrintT (rootNode - rNode);
}
}
/ / in order to traverse the binary tree
Void lastTraverse (binTree * rootNode)
{
If (rootNode = = NULL) return;
The else
{
PrintT (rootNode - lNode);
PrintT (rootNode - rNode);
Cout rootNode - data ;
}
}
/ / the total number of nodes
Int nodeTotal (binTree * rootNode)
{
If (rootNode = = NULL) return 0;
The else
{
Return 1 + nodeTotal + nodeTotal (rootnode- rNode);
}
}
/ / calculate the depth of the binary tree
Int treeDepth (binTree * rootNode)
{
If (rootNode = = N
文档评论(0)