黑马程序员技术交流社区

标题: 关于递归的运行过程,学得有点懵,求大神解析 [打印本页]

作者: boycechan    时间: 2014-12-12 21:01
标题: 关于递归的运行过程,学得有点懵,求大神解析
  1. class DiGui
  2. {
  3.         public static void main(String[] args)
  4.         {
  5.                 int sum=getSum(4);
  6.                 System.out.println("sum="+sum);
  7.         }
  8.         //下面的方法使用递归实现 求 1~n的和
  9.         public static int getSum(int n)
  10.         {
  11.                 if(n==1)
  12.                 {
  13.                         //满足条件,递归结束
  14.                         return 1;
  15.                 }
  16.                 int temp=getSum(n-1);
  17.                 return temp+n;
  18.         }       
  19. }
复制代码
对这个调用过程有点费解,求大神指点!

作者: Honelyboy    时间: 2014-12-12 21:12
getSum(4)=getSum(3)+4;
getSum(3)=getSum(2)+3;
getSum(2)=getSum(1)+2;
getSum(1)=1;
getSum(4)=1+2+3+4=10;
作者: 曹震国    时间: 2014-12-12 21:18
一起学习,
作者: 擒贼先擒王    时间: 2014-12-12 21:25
就相当于一个金字塔,上边的一层要靠下边的做基础!
复杂问题简单化!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2