P126 删除链表节点
算法 16 阅读
信号摘要
难度:Easy · 时长:02:01 · leetcode 237 · lintcode 372
未对外公开播放权限
点击查看说明
描述
这个题目说的是,你要写一个函数来删除单链表中的一个节点,并且只给你指向那个节点的指针。其中,这个单链表至少有两个节点,并且不会要求你删除尾节点。
比如说,给你的单链表是:0 -> 1 -> 2 -> 4 -> 8
同时给你一个指针 p,指向节点 2:
0 -> 1 -> 2 -> 4 -> 8 p
删除节点 2 后,这条链表变成:
0 -> 1 -> 4 -> 8
代码
public class AlgoCasts {
public class ListNode {
int val;
ListNode next;
ListNode(int x) {
val = x;
}
}
// Time: O(1), Space: O(1)
public void deleteNode(ListNode node) {
node.val = node.next.val;
node.next = node.next.next;
}
}