2 回答

TA貢獻(xiàn)1815條經(jīng)驗 獲得超13個贊
沒有錯啊,雙向鏈表是一條線,線的每兩個挨著的節(jié)點互相連接的,就是說第一個節(jié)點指向第二個,第二個節(jié)點指向第一個和第三個,第三個節(jié)點指向第二個和第四個... 倒數(shù)第一個節(jié)點指向倒數(shù)第二個和第一個。
而循環(huán)鏈表是每兩個挨著的節(jié)點只有前一個指向后一個,并不是互相連接的,也就是說第一個節(jié)點指向第二個,第二個節(jié)點指向第三個,第三個節(jié)點指向第四個... 倒是第一個節(jié)點只指向第一個。
這樣下來,如果有n個節(jié)點,雙向鏈表的連接數(shù)是2(n-1),循環(huán)鏈表的連接數(shù)是n。

TA貢獻(xiàn)1816條經(jīng)驗 獲得超4個贊
英文原文是這樣的:
The reason you might want to create a circularly linked list is if you want the ability to go backward through a list but don’t want the extra overhead of creating a doubly linked list. You can move backward through a circularly linked list by moving forward through the end of the list to the node you are trying to reach.
個人認(rèn)為此處中文翻譯可能不太合適。
總之就是說循環(huán)鏈表最后一個節(jié)點的后繼節(jié)點是第一個節(jié)點,從最后一個節(jié)點再往后移動,就到了第一個節(jié)點,可以重新遍歷一次找到你要的節(jié)點的意思。
我自己的渣翻,改自谷歌翻譯:
您可能想要創(chuàng)建循環(huán)鏈表的原因是:您希望向前訪問鏈表,但不希望負(fù)擔(dān)創(chuàng)建雙向鏈表的額外開銷。您可以在循環(huán)鏈表中向后移動直到超過最后一個節(jié)點(然后繼續(xù)向后移動)來找到你需要達(dá)到的節(jié)點。
- 2 回答
- 0 關(guān)注
- 722 瀏覽
添加回答
舉報