我们可以将Linked List视为Skewed Tree

时间:2017-04-17 04:28:47

标签: algorithm data-structures linked-list tree language-agnostic

考虑到倾斜的树,它使所有节点只有特定的方向(左或右)。我们可以说带有n节点的链表也是一个高度为n?

的偏斜树

1 个答案:

答案 0 :(得分:3)

是。列表是退化树。如果你愿意,你可以把它称为“最大不平衡树”。

事实上,当他们说你需要平衡二叉搜索树以获得O(log n)查找性能时,这正是某人的意思,因为如果你的树变得不平衡,它会退化成一个列表并查找性能变为O(n)。

从另一个方向思考有时也很有用:大多数人都没有理解持久列表如何工作,但很多人都难以理解持久树如何工作。但问题是:它实际上与持久列表完全相同,如果从持久列表开始然后将该列表重新解释为简并树,通常很容易理解持久树是如何工作的。