Leetcode19 删除链表指定节点

思路:用列表保存链表,然后分情况讨论。

python 复制代码
class Solution:
    def removeNthFromEnd(self, head, n: int):
        node_list=[head]
        while head.next:
            head=head.next
            node_list.append(head)
        remove_loc=len(node_list)-n
        #要移除的位置
        if len(node_list)==1:
           return None
        if remove_loc==0:
           return node_list[0].next
        if remove_loc==len(node_list)-1:
           node_list[-2].next=None
           return node_list[0]
        else:
           node_list[remove_loc-1].next=node_list[remove_loc].next
           return node_list[0]
相关推荐
Musennn2 小时前
leetcode 15.三数之和 思路分析
算法·leetcode·职场和发展
MarkHard1237 小时前
Leetcode (力扣)做题记录 hot100(62,64,287,108)
算法·leetcode·职场和发展
小羊在奋斗11 小时前
【LeetCode 热题 100】反转链表 / 回文链表 / 有序链表转换二叉搜索树 / LRU 缓存
算法·leetcode·链表
爱上彩虹c12 小时前
LeetCode Hot100 (1/100)
算法·leetcode·职场和发展
小雅痞15 小时前
[Java][Leetcode simple]26. 删除有序数组中的重复项
java·leetcode
YuforiaCode15 小时前
LeetCode 热题 100 35.搜索插入位置
数据结构·算法·leetcode
2301_8076114918 小时前
310. 最小高度树
c++·算法·leetcode·深度优先·回溯
Musennn21 小时前
102. 二叉树的层序遍历详解:队列操作与层级分组的核心逻辑
java·数据结构·算法·leetcode
理论最高的吻21 小时前
77. 组合【 力扣(LeetCode) 】
c++·算法·leetcode·深度优先·剪枝·回溯法