• python3之递归实例 Be


    一、利用递归求: 1+2+3+4+5...+n的前n项和
     1 def recursion_sum_1(n):
     2     #当n = 1;和为1
     3     #否则,n的和等同于 n + (n -1)
     4 
     5     if n == 1:
     6         return 1
     7 
     8     else:
     9         return n + recursion_sum_1(n-1)
    10 
    11 print(recursion_sum_1(100))        # 5050

    二、利用递归求: 1-2+3-4+5...+n的前n项和

     1 def recursion_sum_2(n):
     2     #当n = 1;和为1
     3     #否则,n的和等同于 n + (n -1)
     4     if n == 1:
     5         return 1
     6     else:
     7         if n % 2 == 0:
     8             return -n + recursion_sum_2(n-1)
     9         elif n % 2 != 0:
    10             return n + recursion_sum_2(n-1)
    11 
    12 print(recursion_sum_2(4))    # -2

    注意:

    递归的优缺点
    优点:
    把问题简单化,让思路更加清晰,代码更简洁
    缺点:
    递归因系统环境影响大,当递归深度太大时,可能会出现不可预知的结果
  • 相关阅读:
    万能清除
    CSS追加笔记
    函数追加笔记
    jQuery实现放大镜效果
    jQuery获取元素的方法
    JavaScript
    jQuery三级联动
    DOM追加笔记
    数据结构与算法之美01
    RPC架构简介与原理
  • 原文地址:https://www.cnblogs.com/gengyufei/p/11316289.html
Copyright © 2020-2023  润新知