m0_62423900 2022-10-01 17:49 采纳率: 80%
浏览 10

建立bst并且输出树的最大深度

img

好像 递归还是输入出问题了 没有反应一直
样例在图里 问题代码在下面。能麻烦给说几句么dbq
#include
#include
using namespace std;
struct TreeNode {
int val;
TreeNode* left;
TreeNode* right;
TreeNode() : val(0), left(nullptr), right(nullptr) {}
TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
TreeNode(int x, TreeNode* left, TreeNode* right) : val(x), left(left), right(right) {}

};
class BST
{
public:
TreeNode* root;
BST() { root = NULL; }
};
int maxDepth(TreeNode* root) {
if (root == nullptr) return 0;
return max(maxDepth(root->left), maxDepth(root->right)) + 1;
}
TreeNode* BuildTree(TreeNode*root,const int&s)
{

     if (root == NULL)
        return new TreeNode(s, NULL, NULL);
    if (s < root->val)
        root->left = BuildTree(root->left, s);
    else if(s >= root->val)
        root->right = BuildTree(root->right, s);    

}
int main()
{
int n; int num; int arry[200];
while(cin>>n)
{
for (int i = 0;i<n;i++)
{
BST TR;
while (cin >> num)
{
BuildTree(TR.root, num);
char ch = cin.get();
if (ch == '\n')
break;
}
arry[i] = maxDepth(TR.root);

    }
}
for(int j=0;j<n;j++)
{
    cout << arry[j] << endl;
}

}

  • 写回答

1条回答 默认 最新

  • zhaotengchen37 2022-10-06 18:26
    关注

    发一下题目

    评论

报告相同问题?

问题事件

  • 创建了问题 10月1日

悬赏问题

  • ¥15 java代码写在记事本上后在cmd上运行时无报错但又没生成文件
  • ¥15 关于#python#的问题:在跑ldsc数据整理的时候一直抱这种错误,要么--out识别不了参数,要么--merge-alleles识别不了参数(操作系统-linux)
  • ¥15 PPOCRLabel
  • ¥15 混合键合键合机对准标识
  • ¥100 现在不懂的是如何将当前的相机中的照片,作为纹理贴图,映射到扫描出的模型上
  • ¥15 魔霸ROG7 pro,win11.息屏后会显示黑屏,如图,如何解决?(关键词-重新启动)
  • ¥15 有没有人知道这是哪里出了问题啊?要怎么改呀?
  • ¥200 C++表格文件处理-悬赏
  • ¥15 Windows Server2016本地登录失败
  • ¥15 复合卡卡号轨道写入芯片卡