摘要

题目链接 难度等级 完成状态 完成分数 最后编辑时间 需要注意
二叉树最大宽度和高度 ★☆☆☆☆ 答案正确 100 2014-10-11 11:32:58

题意

求二叉树的最大宽度和高度。

题解

出题者都叫大家老老实实搜索了,再不搜索那就是没有人性了。

代码

1501.cpp代码已折叠
展开折叠内容
#include<iostream>
int L[20],R[20],n,maxDepth=0,maxBreadth=0,breadth[20];
void transversal(const int &node,const int &depth)
{
    ++breadth[depth];
    if(breadth[depth]>maxBreadth)
        maxBreadth=breadth[depth];
    if(depth>maxDepth)
        maxDepth=depth;
    if(L[node])
        transversal(L[node],depth+1);
    if(R[node])
        transversal(R[node],depth+1);
}
int main()
{
    std::cin>>n;
    for(int i=1;i<=n;++i)
        std::cin>>L[i]>>R[i];
    transversal(1,1);
    std::cout<<maxBreadth<<" "<<maxDepth;
    return 0;
}

著作权声明[编辑]

关于[编辑]