【发布时间】:2018-08-12 14:39:06
【问题描述】:
我对哪个选项正确以及为什么正确感到困惑。所以这里有一些问题:
-
从单链表的最后一个位置删除一个节点的最佳运行时间是多少。
- (a) O(1)
- (b) Ω(n)
- (c) O(log n)
- (d) Θ(n2)
我的想法:
我认为b中的解决方案?因为,我知道当你删除链表的最后一个元素时,它是 O(n),因为你必须遍历链表的所有元素。 -
在双向链表中实现的将元素压入堆栈的最坏情况下的运行时间是多少?
- (a) O(1)
- (b) 问(8)
- (c) O(n log n)
- (d) Ω(n)
我的想法:
我认为解决方案是 d,因为将元素插入链表的大哦是 O(n) ,其中 n 是您要插入的元素数。
我真的对这个话题感到困惑,如果有人可以修改我的解决方案并理解为什么他们的解决方案是正确的,那么我将不胜感激。谢谢。
【问题讨论】:
标签: performance time big-o singly-linked-list doubly-linked-list