33-python递归

1. 递归的应用场景

递归是一种编程思想,应用场景:

  1. 在我们日常开发中,如果要遍历一个文件夹下⾯面所有的文件,通常会使用递归来实现;
  2. 在后续的算法课程中,很多算法都离不开递归,例例如:快速排序。

2. 递归的特点

  • 函数内部自己调用自己
  • 必须有出口

3. 应用: 3以内数字累加和

# 3 + 2 + 1
def sum_numbers(num):
    # 1.如果是1,直接返回1 -- 出口
    if num == 1:
        return 1
    # 2.如果是1,重复执行累加:
    result = num + sum_numbers(num-1)
    # 3.返回累加结果
    return result

sum_result = sum_numbers(3) # 3 + sum2(2+sum(1)) ---> sum(1) 返回1, 所以 sum(2) 返回3, 最后sum(3)返回6
# 输出结果为6
print(sum_result)

执行的结果:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/sgy1993/article/details/115260046