Python中將列表轉(zhuǎn)化為鏈表的方法詳解
Python中將列表轉(zhuǎn)化為鏈表
任務(wù):輸入一組數(shù),將其按照順序添加到鏈表中。
A:首先明確一下,怎樣才算拿到一個鏈表?又怎樣才能訪問整個鏈表呢?
Q:
1.拿到鏈表的頭節(jié)點(diǎn)=可以訪問鏈表了。
2.通過不斷訪問下一個節(jié)點(diǎn)(current_node.next())來實(shí)現(xiàn)遍歷整個鏈表。
代碼如下:
# -*- coding: utf-8 -*- ''' func:輸入一組數(shù)字,并將其初始化為鏈表 author:jyz ''' #節(jié)點(diǎn)類 class Node(): def __init__(self,data): self.data = data self.next = None if __name__ == '__main__': #頭節(jié)點(diǎn) head = Node(None) L = map(lambda x:int(x),input().strip().split()) #從控制臺獲取輸入,注意map返回的是生成器 print('L:', L) cur = head #當(dāng)前節(jié)點(diǎn),每存一個就加一 for i in L: #開始把L往鏈表中塞 tmp = Node(i) cur.next = tmp cur = tmp cur = head #當(dāng)前節(jié)點(diǎn),從頭開始遍歷 while cur: #不能用cur.next 這樣最后一個節(jié)點(diǎn)打印不出來 print(cur.data) cur = cur.next
結(jié)果
L: <map object at 0x0000023173C53C48>
None
1
2
3
可以看到,已經(jīng)實(shí)現(xiàn)存儲鏈表,以及遍歷鏈表了。
需要注意的是:
1.map() return的是一個map類型的生成器;
2.鏈表頭節(jié)點(diǎn)的data是None。
到此這篇關(guān)于Python中將列表轉(zhuǎn)化為鏈表的方法詳解的文章就介紹到這了,更多相關(guān)Python中將列表轉(zhuǎn)化為鏈表內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python點(diǎn)擊鼠標(biāo)獲取坐標(biāo)(Graphics)
這篇文章主要為大家詳細(xì)介紹了python點(diǎn)擊鼠標(biāo)獲取坐標(biāo),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-08-08一篇文章帶你了解Python和Java的正則表達(dá)式對比
正則表達(dá)式有元字符及不同組合來構(gòu)成,通過巧妙的構(gòu)造正則表達(dá)式可以匹配任意字符串,并完成復(fù)雜的字符串處理任務(wù),希望本片文章能給你帶來幫助2021-09-09使用Python模塊進(jìn)行數(shù)據(jù)處理的詳細(xì)步驟
Python 提供了豐富的模塊和庫,用于處理各種類型的數(shù)據(jù),本文介紹了一些常用的模塊和庫,以及如何使用它們進(jìn)行數(shù)據(jù)處理的詳細(xì)步驟和代碼示例,對我們的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2025-02-02解決mnist數(shù)據(jù)集下載的相關(guān)問題
這篇文章主要介紹了解決mnist數(shù)據(jù)集下載的相關(guān)問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-06-06Python通過getattr函數(shù)獲取對象的屬性值
這篇文章主要介紹了Python通過getattr函數(shù)獲取對象的屬性值,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-10-10Python實(shí)現(xiàn)希爾排序算法的原理與用法實(shí)例分析
這篇文章主要介紹了Python實(shí)現(xiàn)希爾排序算法,簡單講述了希爾排序的原理并結(jié)合具體實(shí)例形式分析了Python希爾排序的具體實(shí)現(xiàn)方法與使用技巧,需要的朋友可以參考下2017-11-11