首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >链表相对于二叉树的优势是什么?

问链表相对于二叉树的优势是什么?
EN

Stack Overflow用户
提问于 2010-01-10 13:46:20
回答 7查看 13.6K关注 0票数 4

标题大多不言自明:链表相对于二叉树的优势是什么?我能想到的唯一更有效的情况是遍历每个元素,在这种情况下它仍然非常接近。看起来二叉树在访问数据和插入新元素方面都更快。那么为什么要使用链表呢?

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2010-01-10 14:00:40

如果存储链表的尾部,那么插入到链表中肯定比插入到二叉树中快。如果二叉树是不平衡的,那么插入到二叉树的最坏情况是O(N) (最好的情况是O(Log))。如果它是平衡的,那么插入就是O(log N),但是需要内部管理来保持它的平衡。如果保持尾部不变,则插入链表的时间为O(1)。

此外,与BillyONeal mentioned一样,二叉树通常是关联结构,而链表不是。

票数 6
EN

Stack Overflow用户

发布于 2010-01-10 13:59:05

与二叉树相比,从链表中删除项更容易/更快,因为二叉树只需要很少的操作就可以修复树。

票数 4
EN

Stack Overflow用户

发布于 2010-01-10 13:48:11

链表通常不用作关联容器(READ:不用作字典) --仅用作项的文字列表,如数组。当需要这样一种简单的数据结构时,二叉树的性能很差。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2036251

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档