新手问题,有关递归的

哪位大神!!!能不能把递归和递推的思想讲的详细一些,感觉好乱呀~图片说明

 比如说,计算sum(n) = 1+2+3+..+n,我们可以用数学归纳法
当n = 1,sum(n) = 1
当n > 1,sum(n) = n + sum(n - 1)
这个能理解么?
用递归来写,就是
int sum(n)
{
if (n == 1) return 1;
return n + sum(n - 1);
}

方法内部执行它自己 注意递归的跳出条件

数学归纳法
http://baike.baidu.com/link?url=abwZiuK3IRPIuYYgdAcBXt1eFwGRYv7WDjUFj0qZKhPMTtqBh2tfNsQSypA5YZYQXgZHL8ozs7S6XrvfOOV0O_