java - 删除单链表当前的节点是不是一定要获得上一个节点?
阿神
阿神 2017-04-18 09:46:08
0
2
435
public class Node<Item> {
    private Item item;
    private Node<Item> next;
}

现有ABCDE5个节点,分别指向下一个节点:A->B->C->D->E
比如我想删除C,就得做类似的操作:

B.next = B.next.next;
C.next = null;

所以想问:删除单链表当前的节点是不是一定要获得上一个节点?

阿神
阿神

闭关修行中......

全部回覆(2)
PHPzhong

不一定,有種比較猥瑣的做法,常常面試題也會考,你可以這樣搞就不用拿上一個節點:

D = C.next;
C.item = D.item;
C.next = D.next;
D.next = null;
刘奇

如果不取得上一個節點,就無法建立節點之間新的關係,那就變成分割鍊錶了。
關鍵是建立節點之前的前後關係。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!