Data structures 双链表中最后一个元素的删除复杂性

Data structures 双链表中最后一个元素的删除复杂性,data-structures,time-complexity,doubly-linked-list,discrete-mathematics,Data Structures,Time Complexity,Doubly Linked List,Discrete Mathematics,如果要删除节点A,则只需遍历一个节点,复杂性将为O1 如果您想要删除节点C,那么您必须遍历两次,复杂性将增加 如果要删除节点D,则必须遍历三次,复杂性可能会增加 但是,双链接列表中最后一个节点的删除复杂性为O1 我不明白这是怎么回事 我检查了这个链接,但是我没有得到/不理解我的答案 复杂性不在于删除项目,而在于定位项目 在双链接列表中,通常会有一个指向列表中最后一个元素的指针,以便可以追加。因此,如果有人要求您删除最后一个元素,您可以将其删除 如果有人要求您删除列表中的第k个元素,您必须从开头开

如果要删除节点A,则只需遍历一个节点,复杂性将为O1

如果您想要删除节点C,那么您必须遍历两次,复杂性将增加

如果要删除节点D,则必须遍历三次,复杂性可能会增加 但是,双链接列表中最后一个节点的删除复杂性为O1

我不明白这是怎么回事

我检查了这个链接,但是我没有得到/不理解我的答案

复杂性不在于删除项目,而在于定位项目

在双链接列表中,通常会有一个指向列表中最后一个元素的指针,以便可以追加。因此,如果有人要求您删除最后一个元素,您可以将其删除


如果有人要求您删除列表中的第k个元素,您必须从开头开始,遍历k个链接找到该元素,然后才能删除它。这没关系,在最坏的情况下是开1。

从双链接列表中删除最后一个节点的唯一情况是O1复杂性是当您可以直接访问此节点时,类似于尾部指针。否则,您将不得不遍历整个列表。

Big-O复杂性只在您谈论可以任意大的输入时才会出现。您是否特别询问此图表?或者关于这种一般形状的东西?顺便说一句,这是我的答案,你联系到了。很高兴澄清。我想解释一下上次节点删除的复杂性。请解释一下给定的图像情况和一个大数据集情况。从图中看,您似乎无法访问尾部指针,这意味着节点D的删除应该在@BarışAkkurt上,因此如果提到尾部指针,那么它将是O1复杂性?在最后一个节点删除的情况下