1. 程式人生 > >單項鏈表和雙向鏈表的區別

單項鏈表和雙向鏈表的區別

water 分享 tex width csdn 區別 需要 text 單向

單鏈表(單向鏈表):由兩部分組成 數據域(Data)和結點域(Node),單鏈表就像是一條打了很多結的繩子,每一個繩結相當於一個結點,每個節結點間都有繩子連接,這樣原理的實現是通過Node結點區的頭指針head實現的,每個結點都有一個指針,每個節點指針的指向都是指向自身結點的下一個結點,最後一個結點的head指向為null,這樣一來就連成了上述所說繩子一樣的鏈,對單鏈表的操作只能從一端開始,如果需要查找鏈表中的某一個結點,則需要從頭開始進行遍歷。

技術分享圖片

雙鏈表(雙向鏈表):雙鏈表和單鏈表相比,多了一個指向尾指針(tail),雙鏈表的每個結點都有一個頭指針head和尾指針tail,雙鏈表相比單鏈表更容易操作,雙鏈表結點的首結點的head指向為null,tail指向下一個節點的tail;尾結點的head指向前一個結點的head,tail 指向為null,是雙向的關系;

技術分享圖片

單項鏈表和雙向鏈表的區別