给定单链表 L 和指向要删除的节点的指针p,可以实现复杂度为O(1)的删除。
思路是:把 交换 p->data
和 p->next->data
,然后删除p->next
。仅当p
是最后一个节点时才需要遍历链表,但这不影响总体的复杂度。
如果是给定节点L
和要删除的节点元素条件,这种方法不适用。
复杂度为O(1)的单链表节点删除(总结)
最新推荐文章于 2022-08-12 00:24:46 发布
给定单链表 L 和指向要删除的节点的指针p,可以实现复杂度为O(1)的删除。
思路是:把 交换 p->data
和 p->next->data
,然后删除p->next
。仅当p
是最后一个节点时才需要遍历链表,但这不影响总体的复杂度。
如果是给定节点L
和要删除的节点元素条件,这种方法不适用。