删除链表的结点
编写一个函数,在给定单链表一个结点(非尾结点)的情况下,删除该结点。
假设该链表为1 -> 2 -> 3 -> 4
并且给定你链表中第三个值为3
的节点,在调用你的函数后,该链表应变为1 -> 2 -> 4
。
其中给的单链表定义为
* public class ListNode {
* int val;
* ListNode next;
* ListNode(int x) { val = x; }
思路:这道题是比较简单的,你只要把后一个节点的值给当前节点。
然后把指针指向下下个节点就行了
class Solution {
public void deleteNode(ListNode node) {
node.val = node.next.val;
node.next = node.next.next;
}
}
注意:对象类型传值的时候,传递的是这个对象的引用。