码迷,mamicode.com
首页 > 编程语言 > 详细

2018-6-6-Python全栈开发day15-part2-递归

时间:2018-06-06 23:52:22      阅读:234      评论:0      收藏:0      [点我收藏+]

标签:else   并且   递归   个人   int   没有   input   return   处理   

递归

  在函数内继续运行函数,知道达成某一目标,最终返回值。

递归的特性:

    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-递归

标签:else   并且   递归   个人   int   没有   input   return   处理   

原文地址:https://www.cnblogs.com/hai125698/p/9147722.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!