【发布时间】:2019-02-11 04:02:45
【问题描述】:
如果你想删除节点A,那么你只需要遍历一个,复杂度将O(1)
如果要删除节点C,则必须遍历两次,复杂度将O(n)
如果要删除Node D,则需要遍历3次,复杂度可能为O(n) 但是,双链表中最后一个节点的删除复杂度是O(1)
我不明白它是如何工作的?
我检查了这个链接,但我没有得到/不明白我的答案 Link
【问题讨论】:
-
Big-O 复杂性仅在您谈论可以任意大的输入时才会发挥作用。你是在问这个图吗?或者关于这种一般形状的东西? (顺便说一句,这就是你链接的我的答案。很高兴澄清事情。)
-
我想解释一下最后一个节点删除的复杂性。请解释一下给定图像案例和大型数据集案例。
-
从图中您似乎无法访问尾指针,这意味着删除节点 D 应该是 O(n)
-
@Barış Akkurt 所以如果提到尾指针,那么复杂度会是 O(1)。 ?(在最后一个节点删除的情况下)
标签: data-structures time-complexity doubly-linked-list discrete-mathematics