删除链表中的第n到m个节点
程序员文章站
2022-07-12 12:03:21
...
题目描述
给定一个链表,删除链表中的第 n 到 m 个节点,返回链表的头节点。
编号从 00 开始
链表的长度不超过 100000
样例
样例 1:
输入:head = 1->2->3->4->5->null, n = 1, m = 2
输出:1->4->5->null
样例 2:
输入:head = 1->2->3->4->5->null, n = 1, m = 4
输出:1->null
代码实现(JAVA)
public ListNode deleteNode(ListNode head, int n, int m) {
// Write your code here
if (head == null) {
return null;
}
ListNode preNode = head;
ListNode curNode = head;
// 1.当n为0时
if (n == 0) {
for (int j = 0; j < m; j++) {
curNode = curNode.next;
}
return curNode.next;
}
for (int i = 0; i < n - 1; i++) {
preNode = preNode.next;
}
for (int j = 0; j < m; j++) {
curNode = curNode.next;
}
preNode.next = curNode.next;
return head;
}
class ListNode {
int val;
ListNode next;
ListNode(int x) {
val = x;
next = null;
}
}
上一篇: Pow,求x的y次幂
下一篇: SQL语句的基本常用的一些语法