版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/whitesun123/article/details/80018074
请编写一个函数,使其可以删除某个链表中给定的(非末尾的)节点,您将只被给予要求被删除的节点。
比如:假设该链表为 1 -> 2 -> 3 -> 4
,给定您的为该链表中值为 3
的第三个节点,那么在调用了您的函数之后,
该链表则应变成 1 -> 2 -> 4
。
思路: 一般我们删除某个节点都要知道前一个节点,现在不知道前一个节点,那么就赋值,假" 删除"这个节点,
实际删除了后一个节点
public void deleteNode(ListNode node) {
if(node.next != null){
node.val = node.next.val;
node.next = node.next.next;
}
else{
node = null;
}
}