zoukankan      html  css  js  c++  java
  • 递归函数

    在函数内部,可以调用其他函数。如果一个函数在内部调用自身本身,这个函数就是递归函数。

    递归函数特性:

    1、必须有一个明确的结束条件;

    2、每次进入更深一层递归时,问题规模相比上次递归都应有所减少

    3、相邻两次重复之间有紧密的联系,前一次要为后一次做准备,(通常前一次的输出就作为后一次的输入)。

    查看当前可以承受的递归深度

    num = 1
    def func():
    global num
    print('from func', num)
    num += 1
    func()

    func()
    def foo():
        print('from foo')
    goo()

    def goo():
    print('from goo')
    foo()

    foo()


    想要递归有意义,必须遵循两个条件:
    回溯: 指的是重复地执行, 每一次执行都要拿到一个更接近于结果的结果,回溯必要有一个终止条件。
    递推: 当回溯找到一个终止条件后,开始一步一步往上递推。

    def num(n):
    sum = 0
    for i in range(1,n+1):
    sum += i
    return sum
    x = num(100)
    print(x)



    def sum_recu(n):
    if n>0:
    return n +sum_recu(n-1)
    else:
    return 0


    sum = sum_recu(100)
    print(sum)




  • 相关阅读:
    linux内核编译
    字符设备驱动ioctl实现用户层内核层通信
    Linux内核完全剖析基于0.12内核
    KVM分析报告
    kvm的vmcall
    kvm源代码分析
    KVM基本概念
    linux系统调用
    UML的9种图例解析(转)
    SurfaceView的基本使用(转)
  • 原文地址:https://www.cnblogs.com/medigrat/p/11866764.html
Copyright © 2011-2022 走看看