python的鏈表基礎(chǔ)知識點(diǎn)
python中的鏈表(linked list)是一組數(shù)據(jù)項(xiàng)的集合,其中每個(gè)數(shù)據(jù)項(xiàng)都是一個(gè)節(jié)點(diǎn)的一部分,每個(gè)節(jié)點(diǎn)還包含指向下一個(gè)節(jié)點(diǎn)的鏈接。鏈表有兩種類型:單鏈表和雙鏈表。
鏈表的數(shù)據(jù)結(jié)構(gòu)如下圖所示:
在鏈表中刪除操作可以通過修改指針來實(shí)現(xiàn),如下圖所示:
插入則是調(diào)整,插入點(diǎn)的前后兩個(gè)指針的指向關(guān)系,如下圖所示:
在python中每個(gè)變量都是指針,例如:
用內(nèi)置數(shù)據(jù)結(jié)構(gòu)(list,dict,tuple等)的嵌套/組合,它們隱式地包含了指向/嵌套關(guān)系,如graph[u][v]={w0,w1..}類的成員變量、嵌套類可能包含了指向/嵌套關(guān)系;
引用表示指向關(guān)系,只不過引用不能像指針一樣運(yùn)算,比如p+1指向下一個(gè)元素,所以可能限制頗多。因此,要實(shí)現(xiàn)鏈表的操作,不能和c一樣直接對指針進(jìn)行操作。
內(nèi)容擴(kuò)展:
鏈表是計(jì)算機(jī)科學(xué)里面應(yīng)用應(yīng)用最廣泛的數(shù)據(jù)結(jié)構(gòu)之一。它是最簡單的數(shù)據(jù)結(jié)構(gòu)之一,同時(shí)也是比較高階的數(shù)據(jù)結(jié)構(gòu)(例如棧、環(huán)形緩沖和隊(duì)列)
簡單的說,一個(gè)列表就是單數(shù)據(jù)通過索引集合在一起。在C里面這叫做指針。比方說,一個(gè)數(shù)據(jù)元素可以由地址元素,地理元素、路由信息活著交易細(xì)節(jié)等等組成。但是鏈表里面的元素類型都是一樣的,是一種特殊的列表。
一個(gè)單獨(dú)的列表元素叫做一個(gè)節(jié)點(diǎn)。這些節(jié)點(diǎn)不像數(shù)組一樣都按順序存儲在內(nèi)存當(dāng)中,相反,你可以通過一個(gè)節(jié)點(diǎn)指向另外一個(gè)節(jié)點(diǎn)的指針在內(nèi)存不同的地方找到這些元素。列表最后一項(xiàng)習(xí)慣用NIL表示,相當(dāng)于python里面的None
以上就是python的鏈表基礎(chǔ)知識點(diǎn)的詳細(xì)內(nèi)容,更多關(guān)于python有鏈表嗎的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
淺談Keras中shuffle和validation_split的順序
這篇文章主要介紹了淺談Keras中shuffle和validation_split的順序,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-06-06python pandas實(shí)現(xiàn)excel轉(zhuǎn)為html格式的方法
今天小編就為大家分享一篇python pandas實(shí)現(xiàn)excel轉(zhuǎn)為html格式的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-10-10python根據(jù)json數(shù)據(jù)畫疫情分布地圖的詳細(xì)代碼
這篇文章主要介紹了python根據(jù)json數(shù)據(jù)畫疫情分布地圖的詳細(xì)代碼,掌握使用pyecharts構(gòu)建基礎(chǔ)的全國地圖可視化圖表,本文結(jié)合示例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2022-12-12Scrapy爬蟲框架集成selenium及全面詳細(xì)講解
這篇文章主要為大家介紹了Scrapy集成selenium,以及scarpy爬蟲框架全面講解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪2022-04-04Python學(xué)習(xí)筆記嵌套循環(huán)詳解
這篇文章主要介紹了Python學(xué)習(xí)筆記嵌套循環(huán)詳解,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-07-07