树结构

2020-04-16  本文已影响0人  努力学习的CC

树的内部节点:非叶子节点
树的外部节点:叶子节点

如何计算一个树的深度和高度

计算树的深度

假设p是树t中的一个节点,那么p的深度就是p的祖先节点的数量,对此我们可以用递归的方法来实现,如果p是跟节点,返回0,否则返回1+其父节点的深度

    def depth(p):
        '''return the depth of node p'''
        if is_root(p):
            return 0
        else:
            return 1+depth(parent(p))

计算树的高度

一个节点p的高度定义如下:

    def height(p):
        '''return the height of node p'''
        if is_leaf(p):
            return 0
        else:
            return 1+max(height(c) for c in children(p))

二叉树:

特点:

上一篇下一篇

猜你喜欢

热点阅读