2018-6-6-Python全棧開發day15-part2-遞歸
阿新 • • 發佈:2018-06-07
條件 pop 溢出 在哪裏 return 並且 AR 效率 應該
遞歸
在函數內繼續運行函數,知道達成某一目標,最終返回值。
遞歸的特性:
1.函數必須有明確的結束條件
2.沒進入一次遞歸,需要處理的問題應該減少
3.遞歸的效率很低,需要防止內存溢出
上課習題
1.問路
#問路,大路上有幾個人,問其中一個人是否知道某地在哪裏 s1=[‘alex‘,‘xuzheng‘,‘xiaoye‘,‘haibin‘] def wenlu(s1): person=s1.pop(0)#將路人名單單個調出來進行詢問,並且使沒有問的名單減少 if person == ‘haibin‘:#只有海濱知道路怎麽走 return‘啊我知道太平貨櫃怎麽走‘ if len(s1) == 0: return ‘沒有人知道路怎麽走‘ print(‘不好意思我也不知道,我幫你問一下‘) res=wenlu(s1) return res res=wenlu(s1) print(res)
很粗糙的遞歸
str = input(‘請輸入若幹字符:‘) def f(x): if x == -1: return ‘‘ else: return str[x] + f(x - 1) print(f(len(str) - 1)) ---- Alex==== xela
自己寫的
def zhuan(x): if x == 0: return ‘‘ else: a=s[x-1]+zhuan(x-1) return a b=zhuan(len(s)) print(b)
2018-6-6-Python全棧開發day15-part2-遞歸