单链表中要删除当前节点,如果当前节点不是头节点,则无法使前面的节点直接指向后面的节点,这时候我们可以换一种思路,即:将当前节点的下一节点值附给当前节点,然后删除当前节点的下一节点,这样就等效为删除当前接节点了。
/**
* @author Gavenyeah
* @date Start_Time:2016年4月1日 上午11:00:13
* @date End_Time:2016年4月1日 上午11:06:32
*/
/**
* Definition for singly-linked list.
* public class Node {
* int data;
* Node next;
* Node(int x) { data = x; }
* }
*/
public void deleteNode(Node node) {
node.val=node.next.val;
node.next=node.next.next;
}
代码中调用的Node类和ListNode类,代码详见
Java单链表基本操作(一)–顺序查找