最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

對(duì)python實(shí)現(xiàn)合并兩個(gè)排序鏈表的方法詳解

 更新時(shí)間:2019年01月23日 10:36:22   作者:chrispink_yang  
今天小編就為大家分享一篇對(duì)python實(shí)現(xiàn)合并兩個(gè)排序鏈表的方法詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

輸入兩個(gè)單調(diào)遞增的鏈表,輸出兩個(gè)鏈表合成后的鏈表,當(dāng)然我們需要合成后的鏈表滿足單調(diào)不減規(guī)則。

1、迭代方法

  def Merge(self, pHead1, pHead2):
    p1, p2 = pHead1, pHead2
    if p1 and p2:
      if p1.val < p2.val:
        head = p1
        p1 = p1.next
      else:
        head = p2
        p2 = p2.next
      cur = head
    elif p1:
      return p1
    else:
      return p2

    while p1 and p2:
      if p1.val < p2.val:
        cur.next = p1
        p1 = p1.next
      else:
        cur.next = p2
        p2 = p2.next
      cur = cur.next
    if p1:
      cur.next = p1
    else:
      cur.next = p2
    return head

2、遞歸方法

  def Merge_rcv(self, pHead1, pHead2):
    if not pHead1:
      return pHead2
    if not pHead2:
      return pHead1
    if pHead1.val < pHead2.val:
      pres = pHead1
      pres.next = self.Merge(pHead1.next, pHead2)
    else:
      pres = pHead2
      pres.next = self.Merge(pHead1, pHead2.next)
    return pres

附注:

遞歸算法運(yùn)行邏輯看著復(fù)雜,但是形式上都是簡(jiǎn)單的.每一層都表達(dá)了”當(dāng)前結(jié)點(diǎn)要做的任務(wù)”.

思考遞歸算法的步驟應(yīng)該是

1) 明確每一層要做的任務(wù),eg,選擇鏈表中較小值作為當(dāng)前結(jié)點(diǎn)

2) 明確每一層的任務(wù)的完結(jié)點(diǎn)和遞歸連接點(diǎn),eg,在pres.next處進(jìn)行下一層遞歸

3) 明確return條件,eg,當(dāng)p1,p2其中有一個(gè)為空時(shí),遞歸任務(wù)結(jié)束

幾乎所有的遞歸算法都可以沿著這三個(gè)要求思考構(gòu)造,很自然不怕寫遞歸算法,三個(gè)問(wèn)題能自己在腦里回答出來(lái),稍加修飾就是一個(gè)完整的遞歸算法.

這也是函數(shù)式編程的魅力所在.

以上這篇對(duì)python實(shí)現(xiàn)合并兩個(gè)排序鏈表的方法詳解就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • python用opencv完成圖像分割并進(jìn)行目標(biāo)物的提取

    python用opencv完成圖像分割并進(jìn)行目標(biāo)物的提取

    這篇文章主要介紹了python用opencv完成圖像分割并進(jìn)行目標(biāo)物的提取,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • Django處理Ajax發(fā)送的Get請(qǐng)求代碼詳解

    Django處理Ajax發(fā)送的Get請(qǐng)求代碼詳解

    在本篇文章里小編給大家整理了關(guān)于Django處理Ajax發(fā)送的Get請(qǐng)求代碼知識(shí)點(diǎn),有需要的朋友們參考學(xué)習(xí)下。
    2019-07-07
  • pytorch Variable與Tensor合并后 requires_grad()默認(rèn)與修改方式

    pytorch Variable與Tensor合并后 requires_grad()默認(rèn)與修改方式

    這篇文章主要介紹了pytorch Variable與Tensor合并后 requires_grad()默認(rèn)與修改方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-05-05
  • Python中如何檢查字符串是否包含列表中的元素

    Python中如何檢查字符串是否包含列表中的元素

    在數(shù)據(jù)預(yù)處理或糾錯(cuò)的過(guò)程中可能會(huì)用到對(duì)列表中是否含有我們需要的字符串的判斷,下面這篇文章主要給大家介紹了關(guān)于Python中如何檢查字符串是否包含列表中的元素的相關(guān)資料,需要的朋友可以參考下
    2023-06-06
  • Python使用xlrd輕松讀取Excel文件的示例代碼

    Python使用xlrd輕松讀取Excel文件的示例代碼

    本文主要介紹了使用 Python 的 xlrd 庫(kù)讀取 Excel 文件的方法,包括安裝、各種操作如工作表操作、單元格操作、行與列操作、處理不同數(shù)據(jù)類型、性能優(yōu)化、結(jié)合其他庫(kù)、自定義處理等,還提到了一些特殊情況的處理及自定義類封裝讀取邏輯,需要的朋友可以參考下
    2024-11-11
  • 淺談Django REST Framework限速

    淺談Django REST Framework限速

    這篇文章主要介紹了淺談Django REST Framework限速,具有一定借鑒價(jià)值,需要的朋友可以參考下。
    2017-12-12
  • PyCharm導(dǎo)入python項(xiàng)目并配置虛擬環(huán)境的教程詳解

    PyCharm導(dǎo)入python項(xiàng)目并配置虛擬環(huán)境的教程詳解

    這篇文章主要介紹了Pycharm導(dǎo)入python項(xiàng)目并配置虛擬環(huán)境的教程,本文圖文并茂給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-10-10
  • Python中的常見數(shù)據(jù)集打亂方法

    Python中的常見數(shù)據(jù)集打亂方法

    這篇文章主要介紹了Python中的常見數(shù)據(jù)集打亂方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • Python爬蟲部分開篇概念講解

    Python爬蟲部分開篇概念講解

    在學(xué)習(xí)Python爬蟲部分,需要已經(jīng)學(xué)過(guò)Python基礎(chǔ)和前端的相關(guān)知識(shí),本文對(duì)python爬蟲概念及原理給大家詳細(xì)介紹,需要的朋友跟隨小編一起看看吧
    2021-04-04
  • python Jieba分詞處理詳解【模式,詞庫(kù)的添加、刪除,自定義詞庫(kù),失敗處理等】

    python Jieba分詞處理詳解【模式,詞庫(kù)的添加、刪除,自定義詞庫(kù),失敗處理等】

    這篇文章主要介紹了python Jieba分詞處理,結(jié)合實(shí)例形式詳細(xì)分析了python 使用jieba分詞的模式,詞庫(kù)的添加、刪除,自定義詞庫(kù),失敗處理等相關(guān)操作技巧,需要的朋友可以參考下
    2023-07-07

最新評(píng)論

东源县| 海阳市| 科技| 开化县| 巩义市| 金坛市| 滁州市| 句容市| 宜兰县| 台湾省| 开封市| 邓州市| 龙川县| 安丘市| 阿鲁科尔沁旗| 阿拉善盟| 余姚市| 彰化县| 乐安县| 长春市| 林甸县| 庄浪县| 越西县| 华蓥市| 弋阳县| 固镇县| 化州市| 大理市| 康乐县| 锡林浩特市| 隆昌县| 青岛市| 游戏| 芮城县| 疏附县| 孝昌县| 德昌县| 莒南县| 弋阳县| 福贡县| 白玉县|