0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

什么是遞歸與循環(huán)

jf_78858299 ? 來源:人工智能知識分享 ? 作者:人工智能知識分享 ? 2023-02-21 14:27 ? 次閱讀

我們可以使用循環(huán)語句來替代上一篇文章中的遞歸:


>>>L = [1,2,3,4,5]

>>>sum = 0

>>>while L:

... sum += L[0]

... L = L[1:]

...

>>>sum

15

使用for循環(huán)更是可以為我們自動迭代:


>>>L = [1,2,3,4,5]

>>>sum = 0

>>>for x in L: sum += x

...

>>>sum

15

如果用循環(huán)語句取代遞歸,我們就不需要在調(diào)用堆棧上針對每次迭代都有一個本地作用域的副本,并且,我們還避免了一般會與函數(shù)調(diào)用相關(guān)的速度成本。所以循環(huán)語句更加節(jié)約空間也更加快。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 堆棧
    +關(guān)注

    關(guān)注

    0

    文章

    182

    瀏覽量

    19709
  • 遞歸
    +關(guān)注

    關(guān)注

    0

    文章

    28

    瀏覽量

    8999
  • python
    +關(guān)注

    關(guān)注

    54

    文章

    4759

    瀏覽量

    84295
  • 循環(huán)語句
    +關(guān)注

    關(guān)注

    0

    文章

    9

    瀏覽量

    4851
收藏 人收藏

    評論

    相關(guān)推薦

    算法設(shè)計:3.3 遞歸循環(huán)轉(zhuǎn)換(1)#硬聲創(chuàng)作季

    算法設(shè)計
    學習電子
    發(fā)布于 :2022年12月21日 10:37:44

    算法設(shè)計:3.3 遞歸循環(huán)轉(zhuǎn)換(2)#硬聲創(chuàng)作季

    算法設(shè)計
    學習電子
    發(fā)布于 :2022年12月21日 10:38:15

    《C Primer Plus》讀書筆記——遞歸

    遞歸遞歸函數(shù)中,位于遞歸調(diào)用前的語句和各級被調(diào)函數(shù)具有相同執(zhí)行順序遞歸函數(shù)中,位于遞歸調(diào)用后的語句和各級被調(diào)函數(shù)具有相反執(zhí)行順序每級
    發(fā)表于 02-05 20:06

    可編程控制器屬于人工智能嗎?(轉(zhuǎn))

    人工智能與傳統(tǒng)編程并沒有太多差異,唯一的差異是需要大量數(shù)據(jù)和算力來進行模型擬合!AI=大數(shù)據(jù)(算料數(shù)據(jù))+算法(深度學習、基于規(guī)則、基于知識、基于統(tǒng)計等等大多是遞歸循環(huán)結(jié)構(gòu))+算力(算力非常高
    發(fā)表于 11-07 05:26

    在Python中什么情況必須使用遞歸

    在前面的文章中,我們說到了可以使用循環(huán)語句來替代遞歸。但是,有時候必須使用遞歸,或者說使用遞歸才是更方便的解決方案。 考慮像下面這樣的一個任務:計算一個嵌套的子列表結(jié)構(gòu)中所有數(shù)字
    的頭像 發(fā)表于 02-21 14:25 ?542次閱讀

    Python支持遞歸函數(shù)

    Python支持遞歸函數(shù)——即直接或間接地調(diào)用自身以進行循環(huán)的函數(shù)。遞歸是頗為高級的話題,并且它在Python中相對少見。然而,它是一項應該了解的有用的技術(shù),因為它允許程序遍歷擁有任意的、不可預知的形狀的結(jié)構(gòu)。
    的頭像 發(fā)表于 02-21 14:28 ?602次閱讀

    C語言,你真的懂遞歸了嗎?

    要說到遞歸如果不說棧的話,我覺得有點不合適,遞歸特點就是不斷的調(diào)用同一個函數(shù),如果這個函數(shù)沒有一個遞歸界限,那么就是死循環(huán)了,所以討論遞歸,
    的頭像 發(fā)表于 06-06 15:24 ?933次閱讀
    C語言,你真的懂<b class='flag-5'>遞歸</b>了嗎?

    常見的PLC系統(tǒng)BUG有哪些?

     PLC系統(tǒng)中的內(nèi)存溢出問題可能導致程序崩潰或系統(tǒng)不穩(wěn)定。為了減少內(nèi)存溢出問題,合理使用內(nèi)存資源,避免無限遞歸循環(huán)或過度使用變量和數(shù)據(jù)結(jié)構(gòu)。
    發(fā)表于 11-15 09:59 ?476次閱讀

    循環(huán)神經(jīng)網(wǎng)絡和遞歸神經(jīng)網(wǎng)絡的區(qū)別

    循環(huán)神經(jīng)網(wǎng)絡(Recurrent Neural Network,簡稱RNN)和遞歸神經(jīng)網(wǎng)絡(Recursive Neural Network,簡稱RvNN)是深度學習中兩種重要的神經(jīng)網(wǎng)絡結(jié)構(gòu)。它們在
    的頭像 發(fā)表于 07-04 14:19 ?648次閱讀

    遞歸神經(jīng)網(wǎng)絡是循環(huán)神經(jīng)網(wǎng)絡嗎

    遞歸神經(jīng)網(wǎng)絡(Recurrent Neural Network,簡稱RNN)和循環(huán)神經(jīng)網(wǎng)絡(Recurrent Neural Network,簡稱RNN)實際上是同一個概念,只是不同的翻譯方式
    的頭像 發(fā)表于 07-04 14:54 ?549次閱讀

    遞歸神經(jīng)網(wǎng)絡與循環(huán)神經(jīng)網(wǎng)絡一樣嗎

    遞歸神經(jīng)網(wǎng)絡(Recursive Neural Network,RvNN)和循環(huán)神經(jīng)網(wǎng)絡(Recurrent Neural Network,RNN)是兩種不同類型的神經(jīng)網(wǎng)絡結(jié)構(gòu),它們在處理序列數(shù)據(jù)
    的頭像 發(fā)表于 07-05 09:28 ?522次閱讀

    rnn是遞歸神經(jīng)網(wǎng)絡還是循環(huán)神經(jīng)網(wǎng)絡

    RNN(Recurrent Neural Network)是循環(huán)神經(jīng)網(wǎng)絡,而非遞歸神經(jīng)網(wǎng)絡。循環(huán)神經(jīng)網(wǎng)絡是一種具有時間序列特性的神經(jīng)網(wǎng)絡,能夠處理序列數(shù)據(jù),具有記憶功能。以下是關(guān)于循環(huán)
    的頭像 發(fā)表于 07-05 09:52 ?433次閱讀

    遞歸神經(jīng)網(wǎng)絡的實現(xiàn)方法

    遞歸神經(jīng)網(wǎng)絡(Recursive Neural Network,簡稱RNN)是一種特殊類型的神經(jīng)網(wǎng)絡,其特點在于能夠處理具有層次或樹狀結(jié)構(gòu)的數(shù)據(jù),并通過遞歸的方式對這些數(shù)據(jù)進行建模。與循環(huán)神經(jīng)網(wǎng)絡
    的頭像 發(fā)表于 07-10 17:02 ?235次閱讀

    遞歸神經(jīng)網(wǎng)絡和循環(huán)神經(jīng)網(wǎng)絡的模型結(jié)構(gòu)

    遞歸神經(jīng)網(wǎng)絡是一種旨在處理分層結(jié)構(gòu)的神經(jīng)網(wǎng)絡,使其特別適合涉及樹狀或嵌套數(shù)據(jù)的任務。這些網(wǎng)絡明確地模擬了層次結(jié)構(gòu)中的關(guān)系和依賴關(guān)系,例如語言中的句法結(jié)構(gòu)或圖像中的層次表示。它使用遞歸操作來分層處理信息,有效地捕獲上下文信息。
    的頭像 發(fā)表于 07-10 17:21 ?442次閱讀
    <b class='flag-5'>遞歸</b>神經(jīng)網(wǎng)絡和<b class='flag-5'>循環(huán)</b>神經(jīng)網(wǎng)絡的模型結(jié)構(gòu)

    Python遞歸的經(jīng)典案例

    當我們碰到諸如需要求階乘或斐波那契數(shù)列的問題時,使用普通的循環(huán)往往比較麻煩,但如果我們使用遞歸時,會簡單許多,起到事半功倍的效果。這篇文章主要和大家分享一些和遞歸有關(guān)的經(jīng)典案例,結(jié)合一些資料談一下個人的理解,也借此加深自己對
    的頭像 發(fā)表于 08-05 15:57 ?250次閱讀