Python高阶--递归函数

递归函数:在函数中调用函数本身,我们就把这样的函数叫做递归函数

递归函数特性:

  1、必须有一个明确的结束条件,即递归边界,退出递归的终止条件

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

  3、相邻两次重复之间有紧密的联系,前一次的输出是为后一次的输入做准备

  4、递归效率不高,递归层次过多会导致栈溢出

如:阶乘的实现和1-100相加的实现

  

 

 通过递归函数实现斐波那契数列

一、实现斐波那契数列

[1,1,2,3,5,8,13,21,34.....],第一个数是1,后面的数等于前两个数相加的结果 ,输入一个数列的位置数,返回斐波那契数列相应位置的值

 

 

二、古典问题:有一对兔子,从第三个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子不死,问每个月的兔子总数为多少?(意味着生长期为2个月)

           

 

 

三、小明有100元钱打算买100本书,A类书籍5元一本,B类书籍3元一本,C类书籍1元两本,请用程序算出小明一共有多少种买法?

         

 

 

第二种方法:

          

 

 

 

  

posted @ 2022-01-15 14:27  哩子吖  阅读(159)  评论(0)    收藏  举报