欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python實(shí)現(xiàn)單鏈表中元素的反轉(zhuǎn)

 更新時(shí)間:2022年05月05日 16:41:24   作者:bebr  
這篇文章主要為大家詳細(xì)介紹了Python實(shí)現(xiàn)單鏈表中元素的反轉(zhuǎn),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

給定一個(gè)單鏈表,將其反轉(zhuǎn)。其實(shí)很容易想到,只需要修改每個(gè)結(jié)點(diǎn)的指針指向:即令后一個(gè)結(jié)點(diǎn)指向前一個(gè)結(jié)點(diǎn),并且將表頭指針指向最后一個(gè)結(jié)點(diǎn)即可。

這個(gè)過(guò)程可以用循環(huán)實(shí)現(xiàn),也可以用遞歸來(lái)實(shí)現(xiàn)。

1、用循環(huán)來(lái)實(shí)現(xiàn):

class LNode:
? ? def __init__(self, elem):
? ? ? ? self.elem = elem
? ? ? ? self.pnext = None
?
def reverse(head):
? ? if head is None or head.pnext is None: #如果輸入的鏈表是空或者只有一個(gè)結(jié)點(diǎn),直接返回當(dāng)前結(jié)點(diǎn)
? ? ? ? return head
? ? pre = None #用來(lái)指向上一個(gè)結(jié)點(diǎn)
? ? cur = newhead = head #cur是當(dāng)前的結(jié)點(diǎn)。newhead指向當(dāng)前新的頭結(jié)點(diǎn)
? ? while cur:
? ? ? ? newhead = cur
? ? ? ? temp = cur.pnext
? ? ? ? cur.pnext = pre #將當(dāng)前的結(jié)點(diǎn)的指針指向前一個(gè)結(jié)點(diǎn)
? ? ? ? pre = cur
? ? ? ? cur = temp
? ? return newhead
?
if __name__=="__main__":
? ? head = LNode(1)
? ? p1 = LNode(2)
? ? p2 = LNode(3)
? ? head.pnext = p1
? ? p1.pnext = p2
? ? p = reverse(head)
? ? while p:
? ? ? ? print(p.elem)
? ? ? ? p = p.pnext

2、用遞歸來(lái)實(shí)現(xiàn):

class LNode:
? ? def __init__(self, elem):
? ? ? ? self.elem = elem
? ? ? ? self.pnext = None
?
def reverse(head):
? ? if not head or not head.pnext:
? ? ? ? return head
? ? else:
? ? ? ? newhead = reverse(head.pnext)
? ? ? ? head.pnext.pnext = head #令下一個(gè)結(jié)點(diǎn)的指針指向當(dāng)前結(jié)點(diǎn)
? ? ? ? head.pnext = None #斷開(kāi)當(dāng)前結(jié)點(diǎn)與下一個(gè)結(jié)點(diǎn)之間的指針指向聯(lián)系,令其指向空
? ? ? ? return newhead
?
?
if __name__=="__main__":
? ? head = LNode(1)
? ? p1 = LNode(2)
? ? p2 = LNode(3)
? ? head.pnext = p1
? ? p1.pnext = p2
? ? p = reverse(head)
? ? while p:
? ? ? ? print(p.elem)
? ? ? ? p = p.pnext

以下是圖解遞歸的詳細(xì)過(guò)程:

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 狀態(tài)機(jī)的概念和在Python下使用狀態(tài)機(jī)的教程

    狀態(tài)機(jī)的概念和在Python下使用狀態(tài)機(jī)的教程

    這篇文章主要介紹了狀態(tài)機(jī)的概念和在Python下使用狀態(tài)機(jī)的教程,本文來(lái)自于IBM官方開(kāi)發(fā)者技術(shù)文檔,需要的朋友可以參考下
    2015-04-04
  • Pytorch抽取網(wǎng)絡(luò)層的Feature Map(Vgg)實(shí)例

    Pytorch抽取網(wǎng)絡(luò)層的Feature Map(Vgg)實(shí)例

    今天小編就為大家分享一篇Pytorch抽取網(wǎng)絡(luò)層的Feature Map(Vgg)實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-08-08
  • Python Selenium破解滑塊驗(yàn)證碼最新版(GEETEST95%以上通過(guò)率)

    Python Selenium破解滑塊驗(yàn)證碼最新版(GEETEST95%以上通過(guò)率)

    這篇文章主要介紹了Python Selenium破解滑塊驗(yàn)證碼最新版(GEETEST95%以上通過(guò)率),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • Django單元測(cè)試中Fixtures用法詳解

    Django單元測(cè)試中Fixtures用法詳解

    這篇文章主要介紹了Django單元測(cè)試中Fixtures用法,通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-02-02
  • pytorch visdom安裝開(kāi)啟及使用方法

    pytorch visdom安裝開(kāi)啟及使用方法

    這篇文章主要介紹了pytorch visdom安裝開(kāi)啟及使用方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • python對(duì)ip地址進(jìn)行排序、分類的方法詳解

    python對(duì)ip地址進(jìn)行排序、分類的方法詳解

    這篇文章主要介紹了python對(duì)ip地址進(jìn)行排序、分類的方法詳解,IP協(xié)議全稱為“網(wǎng)際互連協(xié)議Internet?Protocol”,IP協(xié)議是TCP/IP體系中的網(wǎng)絡(luò)層協(xié)議,需要的朋友可以參考下
    2023-07-07
  • Python PyQt5學(xué)習(xí)之樣式設(shè)置詳解

    Python PyQt5學(xué)習(xí)之樣式設(shè)置詳解

    這篇文章主要為大家詳細(xì)介紹了Python PyQt5中樣式設(shè)置的相關(guān)資料,例如為標(biāo)簽添加背景圖片、為按鈕添加背景圖片、設(shè)置窗口透明等,感興趣的可以學(xué)習(xí)一下
    2022-12-12
  • python實(shí)現(xiàn)讀取Excel內(nèi)容并展示成json

    python實(shí)現(xiàn)讀取Excel內(nèi)容并展示成json

    這篇文章主要為大家詳細(xì)介紹了如何使用python實(shí)現(xiàn)讀取Excel內(nèi)容并展示成json功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以參考一下
    2023-12-12
  • 淺談python中常用的excel模塊庫(kù)

    淺談python中常用的excel模塊庫(kù)

    本文主要介紹了python中常用的excel模塊庫(kù),感興趣的同學(xué),可以參考下。
    2021-06-06
  • python 輪詢執(zhí)行某函數(shù)的2種方式

    python 輪詢執(zhí)行某函數(shù)的2種方式

    這篇文章主要介紹了python 輪詢執(zhí)行某函數(shù)的2種方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-05-05

最新評(píng)論