爱心技术专栏专题

,每次走一步或两步,问最多有多少种走法

摘录:java基础 来源:java基础 加入时间:2006年08月19日
摘要:
,每次走一步或两步,问最多有多少种走法


分析:共有25个阶梯,每一步走法共有两种,走一级,或是走两级。分两种情况:如果第一次走两级的话,那么还有25-2=23级阶梯要走。再求剩下23级阶梯共有多少走法。如果第一次走一级的话,那么还有25-1=24级阶梯要走,于是走完25级阶梯的方法总数,就等于爬完23级阶梯总共方法+爬完24级阶梯的方法总数。而23极又可再分为(23-1)、(23-2)级阶梯。依次类推,可见这是一个典型的递归类型…

转载:转载请保留本信息,本文来自
http://www.51dibs.com
/html/2006/article/info16/a_3ee56ae37fe7b531.htm

,每次走一步或两步,问最多有多少种走法

站点:爱心种子小博士 关键字:,每次走一步或两步,问最多有多少种走法

   
,每次走一步或两步,问最多有多少种走法

分析:共有25个阶梯,每一步走法共有两种,走一级,或是走两级。分两种情况:如果第一次走两级的话,那么还有25-2=23级阶梯要走。再求剩下23级阶梯共有多少走法。如果第一次走一级的话,那么还有25-1=24级阶梯要走,于是走完25级阶梯的方法总数,就等于爬完23级阶梯总共方法+爬完24级阶梯的方法总数。而23极又可再分为(23-1)、(23-2)级阶梯。依次类推,可见这是一个典型的递归类型。我们可以很容易的计算出当有1级和2级阶梯的时候所有的次数:分别为1和2。于是计算方法总数的函数如下:

---------------------------------getNum()---------------------------------------------public int getNum(int i) {  int r=0;  if(i>2)  {   num=getNum(i-1)+getNum(i-2);   return num;  }  else if(i==1)  {   r=1;  }  else if(i==2)  {   r=2;  }  return r;  }---------------------------------------------------------------------------------------测试程序使用java编写.运行使用命令:java stair 25

完整源码:
  • 上篇文章:装Python2.2
  • 下篇文章:没有找到相关文章

客户服务中心信箱:[email protected] [email protected] 网站地图

声明

合作伙伴: