2011-02-10 87 views
19

树遍历的时间复杂度是多少,我相信它肯定是显而易见的,但是我的可怜的大脑现在无法解决它。树遍历的时间复杂度是多少?

+3

它是线性艺术编程第1卷第326页 – new299 2011-02-10 11:18:04

+0

Knuth是计算机编程的艺术吗?我试图找到这个给朋友一个很好的例子,对于一个n-ary树来说它是线性的。 – Nicholas 2012-11-08 00:56:21

+0

是Knuth的“计算机编程的艺术” – new299 2012-11-16 15:48:50

回答

20

它取决于你正在执行什么样的遍历和算法,但通常它会是O(n),其中n是树中节点的总数。深度优先遍历的规范递归实现将消耗最深层次的内存(在堆栈上),在平衡树上它将是log(n)。

1

难道那只是n对于一棵树n节点?

你访问每棵树 - 一次,不是吗?所以我会说它是线性的。

相关问题