二叉树的一些操作
作者:
Sweet丶 | 来源:发表于
2020-10-02 16:24 被阅读0次
- 下面代码是交换左右子树的操作和查询所有叶子节点的代码:
// 交换左右子树
void SwapBiTreeChildren(BiTreeNode *root){
if (root == NULL || (root->left == NULL && root->right == NULL)) {
return;
}
BiTreeNode *temp = root->left;
root->left = root->right;
root->right = temp;
SwapBiTreeChildren(root->left);
SwapBiTreeChildren(root->right);
}
// 求叶子节点个数
int GetLeafNum(BiTreeNode *root){
//
if (root == NULL) return 0;
if (root->left == NULL && root->right == NULL) {
return 1;
}
return GetLeafNum(root->left) + GetLeafNum(root->right);
}
本文标题:二叉树的一些操作
本文链接:https://www.haomeiwen.com/subject/xrjbuktx.html
网友评论