作者:小SASA的天空 | 来源:互联网 | 2023-08-13 20:39
无头指针删除单链表指定结点:可以分为两种情况:1.如果待删除的结点是链表的尾结点,则无法删除。因为删除后无法使其前驱结点的next指针置空。2.如果待删除的结点不是尾节点,则可以通过交换这个结点与其后
无头指针删除单链表指定结点:
可以分为两种情况:
1.如果待删除的结点是链表的尾结点,则无法删除。
因为删除后无法使其前驱结点的next指针置空。
2.如果待删除的结点不是尾节点,则可以通过交换这个结点与其后继结点的值,然后删除后继结点。
1 public static boolean deleteNode(Node n){
2 //不可删除尾节点
3 if(n==null||n.next==null)
4 return false;
5 n.val = n.next.val;
6 n.next = n.next.next;
7 return true;
8 }