【LeetCode 单链表专项】删除链表 M 个节点之后的 N 个节点(1474)

1. 题目

给定链表 head 和两个整数 mn ,遍历该链表并按照如下方式删除节点:

  • 开始时以头节点作为当前节点;
  • 保留以当前节点开始的前 m 个节点;
  • 删除接下来的 n 个节点;
  • 重复步骤 2 2 2 3 3 3 ,直到到达链表结尾;
  • 在删除了指定结点之后,返回修改过后的链表的头节点。

1.1 示例

  • 示例 1 1 1
    • 输入: head = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]m = 2n = 3
    • 输出: [1, 2, 6, 7, 11, 12]
    • 解析: 保留前(m = 2)个结点,也就是以黑色节点表示的从链表头结点开始的结点(1 ->2);删除接下来的(n = 3)个结点(3 -> 4 -> 5),在图中以红色结点表示;继续相同的操作,直到链表的末尾;返回删除结点之后的链表的头结点。

img

  • 示例 2 2 2
    • 输入: head = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]m = 1n = 3
    • 输出: [1, 5, 9]

img

1.2 说明

1.3 限制

  • 链表中节点数目在范围 [ 1 ,   1 0 4 ] [1,\text{ }10^4] [1, 104] 内;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值