首页 > 编程语言 > 详细

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

时间:2018-06-06 23:25:25      阅读:247      评论:0      收藏:0      [点我收藏+]

递归

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

递归的特性:

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

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

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!