小編給大家分享一下python怎么實(shí)現(xiàn)尾遞歸優(yōu)化,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
創(chuàng)新互聯(lián)是工信部頒發(fā)資質(zhì)IDC服務(wù)器商,為用戶(hù)提供優(yōu)質(zhì)的四川聯(lián)通機(jī)房服務(wù)器托管服務(wù)
說(shuō)明
1、尾遞歸是指在函數(shù)返回時(shí)調(diào)用自身,return語(yǔ)句不能包含表達(dá)式。
2、通過(guò)這種方式,編譯器或解釋器可以對(duì)尾遞歸進(jìn)行優(yōu)化,從而使遞歸本身僅占用一個(gè)棧幀,而不會(huì)發(fā)生棧溢出。
實(shí)例
def fact(n): return fact_iter(n, 1) def fact_iter(num, product): if num == 1: return product return fact_iter(num - 1, num * product)
以上是“python怎么實(shí)現(xiàn)尾遞歸優(yōu)化”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!