二叉树采用二叉链表存储,要求编写算法计算二叉树的高度(深度)
时间: 2023-06-02 21:05:39 浏览: 164
二叉链表作存储结构,设计求二叉树高度的算法
3星 · 编辑精心推荐
您好,针对您的问题,我可以给出以下算法来计算二叉树的高度:
1. 如果二叉树为空,则二叉树的高度为0
2. 如果二叉树不为空,则二叉树的高度为左右子树高度的最大值加1。
具体算法实现如下:
```
int getHeight(Node* root) {
if (root == NULL) {
return 0;
} else {
int leftHeight = getHeight(root->left);
int rightHeight = getHeight(root->right);
return max(leftHeight, rightHeight) + 1;
}
}
```
其中, Node 是二叉树中的节点结构体,包括左右子节点指针以及存储的元素值。
希望以上回答可以对您有所帮助。
阅读全文