树遍历方法的大O符号

时间:2012-09-05 15:38:08

标签: math

对于树结构中的每个节点(在前序遍历中)也必须触及所有祖先节点的方法的大O运行时复杂性是多少? O(n * avg(树高))?那就是我们的方法/函数的运行时复杂度是在O(n * avg(树高))? (在一般情况下)。

也许avg(树高)可以定义为(min + max)/ 2,但是hm

1 个答案:

答案 0 :(得分:0)

我可能误解了,但是如果你说你需要遍历所有节点(n)然后触摸每个节点的每个anscestor(最坏的情况:在平衡二进制树中记录n)那么我认为它会是O(n*Log(n))。常量不适用于大O表示法,但(如下面@interjay所指出的)平均值可能是。

假设树的不平衡,触摸所有祖先的最坏情况大约是n/2,这只是大O中的n。