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

您的位置:首頁技術文章
文章詳情頁

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

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

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

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

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

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

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

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

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

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

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

報錯信息:

RuntimeError: maximum recursion depth exceeded

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

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

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

題目:

編寫一個求菲波那奇數(shù)列的遞歸函數(shù),輸入n值,使用該遞歸函數(shù),輸出如下圖形。例如:當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='')

運行結果:

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

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

標簽: Python 編程
主站蜘蛛池模板: 安陆市| 闽侯县| 湟源县| 衡山县| 南昌市| 沧源| 山东| 航空| 平阳县| 临城县| 平原县| 开封市| 南陵县| 章丘市| 嘉善县| 汤阴县| 华宁县| 河津市| 拉萨市| 土默特右旗| 平南县| 长兴县| 汝阳县| 玉树县| 清流县| 治多县| 阆中市| 通渭县| 舞阳县| 杭锦后旗| 景东| 洛宁县| 新泰市| 建昌县| 永寿县| 黄山市| 察哈| 紫阳县| 宜良县| 霍林郭勒市| 井研县|