题目描述:在 O(1) 时间内删除链表节点
1 | import Foundation |
算法思想:① 如果该节点不是尾节点,那么可以直接将下一个节点的值赋给该节点,然后令该节点指向下下个节点,再删除下一个节点,时间复杂度为 O(1)。
② 否则,就需要先遍历链表,找到节点的前一个节点,然后让前一个节点指向 null,时间复杂度为 O(N)。
github地址:https://github.com/cubegao/LeetCode
扫描二维码,分享此文章
题目描述:在 O(1) 时间内删除链表节点
1 | import Foundation |
算法思想:① 如果该节点不是尾节点,那么可以直接将下一个节点的值赋给该节点,然后令该节点指向下下个节点,再删除下一个节点,时间复杂度为 O(1)。
② 否则,就需要先遍历链表,找到节点的前一个节点,然后让前一个节点指向 null,时间复杂度为 O(N)。
github地址:https://github.com/cubegao/LeetCode
扫描二维码,分享此文章