亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Python > 正文

python 利用棧和隊列模擬遞歸的過程

2020-02-15 21:33:11
字體:
來源:轉載
供稿:網友

一、遞歸

遞歸調用:一個函數,調用的自身,稱為遞歸調用
遞歸函數:一個可以調用自身的函數稱為遞歸函數

  凡是循環能干的事,遞歸都能干

方法:

1、寫出臨界條件
2、找這一次和上一次的關系
3、假設當前函數已經能用,調用自身計算上一次的結果再求出本次的結果

  下面我們通過兩段代碼簡單看一下遞歸和非遞歸的區別:

    輸入一個大于等于1的數,求1到n的和!

# 普通函數方法def hanshu(n): sum = 0 # 循環遍歷每一個數字,將他們加到一個事先定義好的變量上,直到加完 for x in range(1, n+1):  sum += x return sum

  下面看一下通過遞歸的方法:

# 遞歸def digui(n): if n == 1:  return 1 # 如果n等于1證明已經遞歸到最后,返回1,這就是上述的臨界條件 else:  return n + digui(n-1) # 當沒有達到臨界條件時,用n加上對n-1的遞歸,每次都把n加進去,但是后面依然是使用當下這個遞歸函數,會再次調用計算n-1,直到遞歸結束,也就是將從n到1的數全部遞歸完

  在實際應用中,遞歸是十分消耗內存的,但是有些事情他很容易去做,很容易理解。下面,就通過一個案例介紹一下遞歸的用法。

二、遞歸遍歷目錄

  下面的內容我就通過解釋代碼來講解了,如果哪里講的不清楚,歡迎大家下方評論提意見。

import os # 由于我們遍歷目錄,所以要找到那個目錄并操作,os模塊包含普遍的操作系統功能path = "" # 這是我們要遍歷的目錄的路徑,需要自己寫進去# 既然是遞歸函數,那么肯定要有個函數,而且這個函數還將在函數內部再次被調用def getAllDir(path, sp = ''): # 參數中傳入路徑和sp,這個我最后說一句你就明白了 # 得到當前目錄下的所有文件 filesList = os.listdir(path) # os.listdir()是os模塊下的一個方法,相當于Linux中的ls,查看所有文件 sp += " " # 這個也先放一下 # 處理每一個文件 for fileName in filesList: # 遍歷剛才找到的目錄下的所有文件  # 判斷是否是目錄(要用絕對路徑)  fileAbsPath = os.path.join(path,fileName) # join是os模塊下將兩個路徑拼接在一起的意思,第二個參數不能有斜杠。因為我們要判斷一下這個文件是一個普通文件還是一個目錄,所有要先把他的絕對路徑整理出來  if os.path.isdir(fileAbsPath): # isdir是判斷是否為目錄,是則返回True   print(sp + "目錄:", fileName) # 打印當前這個文件,他是個目錄   getAllDir(fileAbsPath,sp = " ") # 這里就開始遞歸了,因為我們要找到整個目錄里的東西,所以當這個文件還是個目錄的時候我們需要繼續向下找  else:   print(sp + "普通文件:", fileName) # 如果僅僅是個普通文件,那么他里面也就沒有其他文件了,就可以直接打印他了getAllDir(path) # 這里是調用函數,讓遍歷開始# 最后我來說一下開始寫的那個sp,是space的意思,有人也許現在就明白了。那個其實就是讓我們方便觀察,因為每次打印都是頂行寫的,我們分不清他的目錄結構,所以通過空格來調整。在函數內部寫一個空格增加的表達式,可以使調用次數和空格數相關起來,遞歸的越深,證明目錄的級越低,那么空格越多            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久久久日韩精品久久久男男| 亚洲天堂男人天堂女人天堂| 伊人男人综合视频网| 久久亚洲综合国产精品99麻豆精品福利| 亚洲精品有码在线| 永久免费精品影视网站| 亚洲va电影大全| 日本久久久久久久| 欧美久久精品一级黑人c片| 欧美性在线视频| 久久久久久久网站| 欧美极品少妇xxxxⅹ裸体艺术| 亚洲一品av免费观看| 亚洲欧美在线x视频| 欧美在线视频网| 日韩精品丝袜在线| 亚洲福利精品在线| 欧美成人激情在线| 国产精品高潮呻吟视频| 国产午夜精品久久久| 在线观看日韩专区| 久久国产精品影片| 91精品国产沙发| 久久精品久久久久电影| 日本免费一区二区三区视频观看| 久久久在线免费观看| 国产精品夫妻激情| 欧美限制级电影在线观看| 久久理论片午夜琪琪电影网| 91午夜理伦私人影院| 这里只有精品在线播放| 亚洲精品狠狠操| 欧美一区亚洲一区| 992tv在线成人免费观看| 狠狠久久五月精品中文字幕| 欧美亚洲另类在线| 精品久久久久久久久久久久| 91精品在线一区| 精品少妇v888av| 狠狠色噜噜狠狠狠狠97| 日韩欧美中文字幕在线播放| 欧美美最猛性xxxxxx| 欧美午夜精品在线| 夜夜嗨av色综合久久久综合网| 亚洲人在线视频| 亚洲国产免费av| 国产精品一区久久| 97成人精品区在线播放| 亚洲香蕉伊综合在人在线视看| 国产精品久久在线观看| 欧美专区日韩视频| 欧美日韩国产一区二区三区| 亚洲精品在线观看www| 91成人在线播放| 久久全国免费视频| 欧美一区在线直播| 亚洲精品国产精品乱码不99按摩| 欧美午夜精品在线| 78色国产精品| 日韩中文字幕视频在线| 日本国产高清不卡| 国产日产欧美a一级在线| 国产又爽又黄的激情精品视频| 亚洲成色www8888| 久久精品国产成人| 中文字幕久热精品在线视频| 亚洲伊人成综合成人网| 欧美成人激情视频| 国产精品美女在线观看| 久久精品中文字幕电影| 亚洲黄色在线观看| 国产欧美日韩免费看aⅴ视频| 91精品国产色综合| 久久99视频精品| 亚洲国模精品一区| 色婷婷亚洲mv天堂mv在影片| 欧美日韩爱爱视频| 日本精品中文字幕| 91精品视频在线看| 中文字幕无线精品亚洲乱码一区| 亚洲视频在线免费观看| 亚洲国产福利在线| 性夜试看影院91社区| 亚洲国模精品私拍| 亚洲欧美成人一区二区在线电影| 成人黄色在线播放| 日本中文字幕不卡免费| 亚洲电影免费观看高清完整版在线观看| 精品久久久国产精品999| 亚洲第一精品夜夜躁人人躁| 成人两性免费视频| 国产成人精品日本亚洲专区61| 国产在线一区二区三区| 不卡在线观看电视剧完整版| 日韩欧美国产一区二区| 亚洲国产精彩中文乱码av在线播放| 日韩在线视频观看正片免费网站| 国产精品jizz在线观看麻豆| 一本一本久久a久久精品牛牛影视| 国产97人人超碰caoprom| 中文字幕亚洲欧美日韩高清| 日韩精品在线私人| 欧美大片免费看| 国产在线久久久| 成人网在线免费观看| 日韩资源在线观看| 国产精品视频精品视频| 岛国av午夜精品| 国产色婷婷国产综合在线理论片a| 国产日韩欧美夫妻视频在线观看| 97香蕉超级碰碰久久免费的优势| 在线观看免费高清视频97| 亚洲精品美女在线观看播放| 69久久夜色精品国产7777| 午夜精品99久久免费| 日韩免费av一区二区| 色播久久人人爽人人爽人人片视av| 日韩av手机在线| 日韩av影片在线观看| 国产欧美最新羞羞视频在线观看| 久久影视免费观看| 奇米一区二区三区四区久久| 亚洲国产欧美一区二区三区同亚洲| 亚洲精品在线看| 亚洲区bt下载| 日韩av色在线| 亚洲欧美国产制服动漫| 另类专区欧美制服同性| 97久久精品人搡人人玩| 欧美做爰性生交视频| 久久不射热爱视频精品| 国产成人精品最新| 欧美激情亚洲自拍| 久久亚洲国产精品成人av秋霞| 麻豆乱码国产一区二区三区| 久久亚洲精品一区| 国产精品久久久999| 国产有码在线一区二区视频| 欧美综合在线观看| 国产亚洲激情在线| 欧美日韩一区二区三区| 欧美一区二粉嫩精品国产一线天| 亚洲人成欧美中文字幕| 最近的2019中文字幕免费一页| 成人免费在线视频网站| 性视频1819p久久| 国产成人精品999| 久久久视频免费观看| 91亚洲精品久久久| 青草青草久热精品视频在线网站| 欧美日韩精品在线播放| 欧美日韩在线看| 久久男人av资源网站| 欧美性猛交xxxx富婆弯腰| 久久久在线视频| 欧美激情视频在线| 国产精品美女免费| 欧美三级xxx| 亚洲第一视频在线观看| 成人免费视频网| 亚洲激情久久久| 成人黄色中文字幕| 亚洲无限av看| 国产主播欧美精品|