如何计算树的高度

阿布哈什(Abhash)786

我正在尝试学习DSA,并陷入一个问题。

如何计算树的高度。我的意思是普通树,而不是像BT或BST这样的树的任何特定实现。

我试过谷歌,但似乎每个人都在谈论二叉树,而普通树没有任何可用。

任何人都可以帮助我重定向到某些页面或文章来计算树的高度。

ashish_

可以说树中的典型节点表示为Java类。

class Node{
    Entry entry;
    ArrayList<Node> children;
    Node(Entry entry, ArrayList<Node> children){
        this.entry = entry;
        this.children = children;
    }   
    ArrayList<Node> getChildren(){
        return children;
    }   
}  

然后,一个简单的高度函数可以是-

int getHeight(Node node){
    if(node == null){
        return 0;
    }else if(node.getChildren() == null){
        return 1;
    } else{
       int childrenMaxHeight = 0;
       for(Node n : node.getChildren()){
           childrenMaxHeight = Math.max(childrenMaxHeight, getHeight(n));
       }
       return 1 + childrenMaxHeight;
    }
}

然后,您只需要调用此函数即可将树的根作为参数传递。由于它只遍历所有节点一次,因此运行时间为O(n)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

计算树的高度-Java

来自分类Dev

计算二叉搜索树的高度

来自分类Dev

如何获得BB [α]树的高度

来自分类Dev

如何获得BB [α]树的高度

来自分类Dev

如何在将视图添加到视图树之前计算 UIViewController 高度?

来自分类Dev

如何运行BST树功能的高度

来自分类Dev

如何递归地找到特里树的高度

来自分类Dev

如何计算QTreeWidget内容的高度?

来自分类Dev

如何动态计算UILabel高度

来自分类Dev

如何计算动态元素的高度?

来自分类Dev

如何计算此html的高度

来自分类Dev

pyqtgraph:如何计算GraphicsLayoutWidget的高度

来自分类Dev

如何计算树中子节点的路径?

来自分类Dev

MKMapCamera的海拔高度如何计算?

来自分类Dev

在CSS中,如何计算块元素的“高度”?

来自分类Dev

表格单元格高度如何计算?

来自分类Dev

如何根据设备动态计算UITableViewCell的高度

来自分类Dev

如何使用JavaScript计算div高度?

来自分类Dev

如何从高度计算弹丸的射程?

来自分类Dev

如何计算这个网格容器的高度?

来自分类Dev

如何根据设备动态计算UITableViewCell的高度

来自分类Dev

如何计算条形图的高度

来自分类Dev

如何计算jsPDF中的垂直高度?

来自分类Dev

如何在C中找到特里树的高度

来自分类Dev

如何数学推导此递归树的叶的高度和数量

来自分类Dev

getHeight如何递归确定二叉树的高度?

来自分类Dev

如何获得带有spacy的依赖树的高度?

来自分类Dev

如何找到二叉搜索树的最大高度?

来自分类Dev

如何在C中找到三叉树的高度