Chinaunix首页 | 论坛 | 博客
  • 博客访问: 383267
  • 博文数量: 80
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1767
  • 用 户 组: 普通用户
  • 注册时间: 2013-01-24 16:18
个人简介

为啥不能追求自己的爱好一辈子呢

文章分类

全部博文(80)

文章存档

2017年(1)

2015年(2)

2014年(18)

2013年(59)

分类: C/C++

2013-05-09 10:12:55

引言: 

   最近在读《算法引论》感觉颇有体会,以前对算法都没有一个统一的认识,现在感觉略微了解了些。总体来说感觉数学和计算机是息息相关的,真想回去再读一下数学的那些方法。在这本书里里面它主要讲了递推来实现递归(迭代),也算是数学的一个应用吧。

定理 1

  如果对于带有参数n的命题P,当n=1时P成立,并且如果对于每个n,若n时P成立能推出n+1时成立;那么对于任意自然数,P都成立。

总体来说两点:
1.当n=1时,T成立。(递推基础)

2.对于任意的n〉1,如果n成立,那么n+1时成立。

算法中:

自此,我们可以归纳递归的方法。找到递归基础,并且通过n-1时成立,推出n也成立。也就是
  

点击(此处)折叠或打开

  1. Function(n)
  2. {
  3.   if(n=1)//递归基础
  4.    
  5.     reuturn 基础值
  6.   
  7.   假设Function(n-1)已经求出,
  8.    用Function(n-1)求出n时的值
  9.    
  10. }
最简单的我们求出S(n) = 1 + 2 + 3 +.....+n

点击(此处)折叠或打开

  1. int Function(n)
  2. {
  3.   if(n 1)
  4.       return 1;
  5.   
  6.   return Function(n-1) + n;
  7. }

我也是有感而发,欢迎大家交流。


阅读(1724) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~