public class ListNode {
? ? int val;
? ? ListNode next;
? ? ListNode(int x) { val = x; }
}
刪除一個(gè)單鏈表里的某個(gè)指定的節(jié)點(diǎn):
1.修改指針指向的對(duì)象
public static void deleteNodeV2(ListNode head, ListNode node) {
? ? if(head == null || node == null) {
? ? ? ? return;
? ? }
? ? while (head != null) {
? ? ? ? if(head.next.val == node.val) {
? ? ? ? ? ? head.next = head.next.next;
? ? ? ? ? ? return;
? ? ? ? }
? ? ? ? head = head.next;
? ? }
}
2.指針指向的對(duì)象不變钧椰,節(jié)點(diǎn)的值覆蓋膏潮,需要被刪除node不是尾節(jié)點(diǎn)
public static void deleteNode(ListNode node) {
? ? if(node == null || node.next == null) {
? ? ? ? return;
? ? }
? ? node.val = node.next.val;
? ? node.next = node.next.next;
? ? return;
}
---------------------
作者:翁正存
來(lái)源:CSDN
原文:https://blog.csdn.net/Wengzhengcun/article/details/87971694
版權(quán)聲明:本文為博主原創(chuàng)文章勃痴,轉(zhuǎn)載請(qǐng)附上博文鏈接!