这个二进制搜索计数python函数有什么作用

时间:2018-12-11 18:58:58

标签: python tree binary

您好,我想快速解释一下此功能的作用及其工作原理。我的老师无法以我理解的方式进行解释。它是二进制搜索树程序的一部分,从我可以收集到的信息中,该函数计算出树中出现特定数字(d)的次数。

def count(self, d):    
    pos = self.root
    while pos != None:
        if d == pos.data:
            return pos.mult
        if d < pos.data:
            pos = pos.left
        else:
            pos = pos.right
    return 0

1 个答案:

答案 0 :(得分:0)

该函数不计算树中特定数字出现的次数。

它仅搜索号码。如果找到该数字,则返回pos.mult

如果数字小于或等于d,它将转到当前所在节点的右子节点。如果更大,则转到左孩子。

这样做直到到达叶子(while循环)。叶子将有“无”作为右/左子级。然后停止树遍历并返回0。