算法与数据结构(python):递归
生活随笔
收集整理的這篇文章主要介紹了
算法与数据结构(python):递归
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
提示:專欄解鎖后,可以查看該專欄所有文章。
文章目錄
- 1 什么是遞歸
- 2 調用棧
- 3 尾遞歸
- 4 算例:漢諾塔
1 什么是遞歸
定義:指在函數的定義中使用函數自身的方法。遞歸一詞還較 常用于描述以自相似方法重復事物的過程。例如,當兩面鏡子相互之間近似平行時,鏡中嵌套的圖像是以無限遞歸的形式出 現的。也可以理解為自我復制的過程.
遞歸用一種通俗的話來說就是自己調用自己,但是同時分解它的參數,讓它解決一個更小一點的問題,當問題小到一定規模的時候,需要一個遞歸出口返回。這里舉一個和其他很多老套的教科書一樣喜歡舉的例子,階乘函數,我覺得用來它演示再直觀不過。它的定義是這樣的:
我們很容易根據它的定義寫出這樣一個遞歸函數,因為它本身就是遞歸定義的。
def fact(n總結
以上是生活随笔為你收集整理的算法与数据结构(python):递归的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 小余学调度:学习记录(2022.2,3)
- 下一篇: 算法与数据结构(python):线性查找