首頁 >常見問題 >單鍊錶和多重鍊錶的區別

單鍊錶和多重鍊錶的區別

angryTom
angryTom原創
2019-10-22 15:15:548460瀏覽

單鍊錶和多重鍊錶的區別

什麼是單鍊錶?

單鍊錶是一種鍊式存取的資料結構,用一組位址任意的儲存單元存放線性表中的資料元素。鍊錶中的資料是以結點來表示的,每個結點的構成:元素(資料元素的映像)  指標(指示後繼元素儲存位置),元素就是儲存資料的儲存單元,指標就是連接每個結點的地址資料。

優點:單向鍊錶增加刪除節點簡單。遍歷時候不會死循環。 (雙向也不會死循環,循環鍊錶忘了進行控制的話很容易進入死循環);缺點:只能從頭到尾遍歷。只能找到後繼,無法找到前驅,也就是只能前進。

什麼是多重鍊錶?

多重鍊錶就是鍊錶裡的結點可能隸屬多個鍊錶,最常見的就是十字鍊錶,每個結點都有多個指針域,對應於多個鍊錶嘛,但是反過來說,擁有多個指標域的結點的鍊錶就是多重鍊錶是不準確的,因為循環鍊錶的結點都有2個指標域一個前驅一個後繼,但是它就不是多重鍊錶。

優點:可以找到前驅和後繼,可進可退;缺點:增加刪除節點複雜。

單鍊錶和多重鍊錶的區別:

1、單鍊錶是在元素的節點結構中只能包含一個後繼結點指針,不能包含多個指針的。雙鍊錶則是包含前驅和後繼兩個指標的。

2、單鍊錶要求建好後返回第一個節點的指針(或者有頭結點用頭結點的指針),因為他只能朝後運行,而雙鍊錶建好後可以給任一節點的指針,因為他可以朝前後兩個方向走。知道哪個節點的指標沒有太大關係。原則上以第一個節點為準。

以上是單鍊錶和多重鍊錶的區別的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
上一篇:電腦tpm是什麼下一篇:電腦tpm是什麼