2.11 删除单链表中的节点
图例
例
此时想删除2这个节点的步骤:
- 单从2节点开始没法删除(因为只能取到下一个节点)
- 这时候要先从1节点,连续取后两个节点,然后用3节点指向第一个节点。
代码:
在上一节的Node类中,新写一个方法
//删除下一个节点
public void removeNext(){
//取出下下一个节点
Node newNext = this.next.next;
//把下下一个节点设置为当前节点的下一个节点
this.next = newNext;
}
在上一节的Node类中,新写一个显示【show】的方法
//显示所有节点信息
public void show(){
Node currentNode = this;
while (true){
System.out.print(currentNode.data + " ");
//取出下一个节点
currentNode = currentNode.next;
//如果是最后一个节点
if(currentNode == null){
break;
}
}
System.out.println();
}
结果: