本文實例講述了python雙向鏈表原理與實現(xiàn)方法。分享給大家供大家參考,具體如下:
蘆淞網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián),蘆淞網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為蘆淞上1000+提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站制作要多少錢,請找那個售后服務(wù)好的蘆淞做網(wǎng)站的公司定做!雙向鏈表
一種更復(fù)雜的鏈表是“雙向鏈表”或“雙面鏈表”。每個節(jié)點有兩個鏈接:一個指向前一個節(jié)點,當此節(jié)點為第一個節(jié)點時,指向空值;而另一個指向下一個節(jié)點,當此節(jié)點為最后一個節(jié)點時,指向空值。
操作
實現(xiàn)
class Node(object): """雙向鏈表節(jié)點""" def __init__(self, item): self.item = item self.next = None self.prev = None class DLinkList(object): """雙向鏈表""" def __init__(self): self.__head = None def is_empty(self): """判斷鏈表是否為空""" return self.__head == None def length(self): """返回鏈表的長度""" cur = self.__head count = 0 while cur != None: count += 1 cur = cur.next return count def travel(self): """遍歷鏈表""" cur = self.__head while cur != None: print cur.item, cur = cur.next print "" def add(self, item): """頭部插入元素""" node = Node(item) if self.is_empty(): # 如果是空鏈表,將_head指向node self.__head = node else: # 將node的next指向_head的頭節(jié)點 node.next = self.__head # 將_head的頭節(jié)點的prev指向node self.__head.prev = node # 將_head 指向node self.__head = node def append(self, item): """尾部插入元素""" node = Node(item) if self.is_empty(): # 如果是空鏈表,將_head指向node self.__head = node else: # 移動到鏈表尾部 cur = self.__head while cur.next != None: cur = cur.next # 將尾節(jié)點cur的next指向node cur.next = node # 將node的prev指向cur node.prev = cur def search(self, item): """查找元素是否存在""" cur = self.__head while cur != None: if cur.item == item: return True cur = cur.next return False
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
網(wǎng)頁名稱:python雙向鏈表原理與實現(xiàn)方法詳解-創(chuàng)新互聯(lián)
分享URL:http://bm7419.com/article48/dssiep.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、域名注冊、面包屑導(dǎo)航、商城網(wǎng)站、品牌網(wǎng)站建設(shè)、定制開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容