国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術(shù)文章
文章詳情頁

python遞歸函數(shù)求n的階乘,優(yōu)缺點及遞歸次數(shù)設(shè)置方式

瀏覽:2日期:2022-07-31 10:35:08

遞歸函數(shù)兩大特點:

1.能夠調(diào)用函數(shù)自身

2.至少有一個出口(結(jié)束函數(shù)自身調(diào)用)

函數(shù)實現(xiàn):

def calnum(num): if num != 1: # 遞歸調(diào)用自身函數(shù) csum = num * calnum(num - 1) else: # 設(shè)置遞歸出口 csum = 1 return csumret = calnum(5)print(ret)

遞歸函數(shù)的缺點:

占用資源多,一般不會優(yōu)先選擇。

一個程序中python默認(rèn)只允許調(diào)用自身1024次,超過這個次數(shù),

python解釋器會認(rèn)為該程序執(zhí)行有錯誤而報錯停止

報錯信息:

RuntimeError: maximum recursion depth exceeded

當(dāng)然python是支持自定義次數(shù)的:

import sys# 設(shè)置允許的調(diào)用次數(shù)為2000sys.setrecursionlimit(2000)

補充知識:python:編寫一個求菲波那奇數(shù)列的遞歸函數(shù),輸入n值,使用該遞歸函數(shù)

題目:

編寫一個求菲波那奇數(shù)列的遞歸函數(shù),輸入n值,使用該遞歸函數(shù),輸出如下圖形。例如:當(dāng)n=6時。

0 0 1 10 1 1 2 3 0 1 1 2 3 5 8 0 1 1 2 3 5 8 13 21 0 1 1 2 3 5 8 13 21 34 55

規(guī)律:

1.每行第一個數(shù)為0;

2.第n行數(shù)的個數(shù)為2n-1;

3.第n行第m列數(shù)為第n行中第m-1列和m-2列數(shù)之和;

代碼:

def fei(i,j): #i為行數(shù),j為列數(shù) if i == 1 or j ==1: return 0 elif j == 2 : return 1 else: return fei(i,j-1) + fei(i,j-2) for i in range(1,7): print() for k in range(1,7-i): #控制空格數(shù) print(' ',end='') for j in range(1,(2*i)): print(fei(i,j),'',end='')

運行結(jié)果:

python遞歸函數(shù)求n的階乘,優(yōu)缺點及遞歸次數(shù)設(shè)置方式

以上這篇python遞歸函數(shù)求n的階乘,優(yōu)缺點及遞歸次數(shù)設(shè)置方式就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Python 編程
主站蜘蛛池模板: 渭南市| 巴彦淖尔市| 石台县| 辽中县| 民权县| 莱阳市| 利津县| 东阿县| 营山县| 南陵县| 广东省| 张掖市| 和田市| 宝山区| 郎溪县| 浙江省| 广平县| 二手房| 湘潭市| 南乐县| 柯坪县| 大荔县| 襄汾县| 晋宁县| 靖江市| 乐昌市| 临夏市| 衢州市| 五指山市| 文水县| 星子县| 光山县| 布拖县| 施甸县| 德保县| 临沭县| 大厂| 砚山县| 长治市| 迭部县| 二连浩特市|