如何优雅地使用数学归纳法
前 n 项整数的和
A n = 1 + 2 + 3 + . . + n A_n = 1 + 2 + 3 + .. + n An=1+2+3+..+n
递推式为
A 0 = 0 , n = 0 A n = A n − 1 + n , n ≥ 1 \begin{aligned} A_0&=0,n=0\\ A_n&= A_{n-1} + n, n\geq1 \end{aligned} A0An=0,n=0=An−1+n,n≥1
用数学归纳法证明如下命题为真:
A n = n × ( n + 1 ) 2 A_n = \frac{n\times(n+1)}{2} An=2n×(n+1)
证明:
1、 A 0 = 0 × ( 0 + 1 ) 2 = 0 A_0=\frac{0 \times (0 + 1)}{2} = 0 A0=20×(0+1)=0
2、令 r ≤ n r \leq n r≤n,由递推式可以得到
A r + 1 = A r + r = r × ( r + 1 ) 2 + r + 1 = r ( r + 1 ) + 2 ( r + 1 ) 2 = ( r + 1 ) ( r + 2 ) 2 A_{r+1}=A_{r} + r=\frac{r\times(r+1)}{2} + r+1=\frac{r(r+1) + 2(r+1)}{2}=\frac{(r+1)(r+2)}{2} Ar+1=Ar+r=2r×(r+1)+r+1=2r(r+1)+2(r+1)=2(r+1)(r+2)
所以命题成立
数学归纳法、递推公式 和 通项公式
数学归纳法,只需要相邻两项的递推公式,即可证明通项公式是否正确。
例如 等差级数前 n 项和公式,递推公式为:
S 0 = a , n = 0 S n = S n − 1 + a + n d , n ≥ 0 \begin{aligned} S_0&=a,n=0\\ S_n &= S_{n-1} + a + nd,n\geq0 \end{aligned} S0Sn=a,n=0=Sn−1+a+nd,n≥0
证明其通项公式如下:
S n = ( n + 1 ) ( 2 a + n d ) 2 S_n=\frac{(n+1)(2a+nd)}{2} Sn=2(n+1)(2a+nd)
证明:
1、 S 0 = ( 0 + 1 ) ( 2 a + 0 ) 2 = a S_0=\frac{(0+1)(2a+0)}{2}=a S0=2(0+1)(2a+0)=a
2、令 r ≤ n r\leq n r≤n,由递推式可以得到
S r + 1 = S r + a + ( r + 1 ) d = ( r + 1 ) ( 2 a + r d ) 2 + a + ( r + 1 ) d = ( r + 1 ) ( 2 a + r d ) + 2 a + 2 ( r + 1 ) d 2 = 2 a ( r + 1 ) + r d ( r + 1 ) + 2 a + 2 d ( r + 1 ) 2 = 2 a ( r + 2 ) + ( r + 2 ) ( r + 1 ) d 2 = ( r + 2 ) ( 2 a + ( r + 1 ) d ) 2 \begin{aligned} S_{r+1}&=S_r+a+(r+1)d\\ &=\frac{(r+1)(2a+rd)}{2} + a+(r+1)d\\ &=\frac{(r+1)(2a+rd)+2a+2(r+1)d}{2}\\ &=\frac{2a(r+1)+rd(r+1) + 2a+2d(r+1)}{2}\\ &=\frac{2a(r+2)+(r+2)(r+1)d}{2}\\ &=\frac{(r+2)(2a+(r+1)d)}{2} \end{aligned} Sr+1=Sr+a+(r+1)d=2(r+1)(2a+rd)+a+(r+1)d=2(r+1)(2a+rd)+2a+2(r+1)d=22a(r+1)+rd(r+1)+2a+2d(r+1)=22a(r+2)+(r+2)(r+1)d=2(r+2)(2a+(r+1)d)
命题得证
相同的方式还可以证明,等比数列前n项和的通项公式为:
G n = a 1 − q n + 1 1 − q , 递 推 公 式 为 G n = G n − 1 × a q n G_n=a\frac{1-q^{n+1}}{1-q},递推公式为 G_n=G_{n-1}\times aq^n Gn=a1−q1−qn+1,递推公式为Gn=Gn−1×aqn
前 n项平方和的通项公式为:
G n = n ( n + 1 ) ( 2 n + 1 ) 6 , 递 推 公 式 为 G n = G n − 1 + n 2 G_n=\frac{n(n+1)(2n+1)}{6},递推公式为 G_n=G_{n-1}+n^2 Gn=6n(n+1)(2n+1),递推公式为Gn=Gn−1+n2
前 n项立方和的通项公式为:
G n = [ n ( n + 1 ) 2 ] 2 , 递 推 公 式 为 G n = G n − 1 + n 3 G_n=\bigg [\frac{n(n+1)}{2}\bigg ]^2,递推公式为 G_n=G_{n-1} + n^3 Gn=[2n(n+1)]2,递推公式为Gn=Gn−1+n3
杨辉三角
杨辉三角 也叫 帕斯卡三角,如上图左所示,现在把空格去掉,变成上图右边的矩阵。其中第 n 行的值,对应 ( a + b ) n (a+b)^n (a+b)n展开后的系数。比如 ( a + b ) 2 = a 2 + 2 a b + b 2 (a+b)^2=a^2+2ab+b^2 (a+b)2=a2+2ab+b2,对应的系数 是 1 , 2 , 1 1,2,1 1,2,1,其他以此类推。我们用 C n i C_n^i Cni 表示第 n n n 行,第 i i i 列的值。比如 C 4 3 = 6 C_4^3=6 C43=6,表示第 4 行第 3 列的值为 6。观察上图我们可以看到,这个三角具有的性质,第 n 行 第 i 列的值为,上一行第 i 列 和 上一行第 i - 1 列的值之和,比如 C 4 3 = C 3 3 + C 3 2 C_4^3=C_3^3+C_3^2 C43=C33+C32。由此我们可以得到一个递推式:
C n i = C n − 1 i − 1 + C n − 1 i C_n^i=C_{n-1}^{i-1} +C_{n-1}^i Cni=Cn−1i−1+Cn−1i
现在根据这个递推式,我们需要证明如下求 ( n , i ) (n, i) (n,i)位置的值的通项公式:
C n i = n ! i ! ( n − i ) ! C_n^i=\frac{n!}{i!(n-i)!} Cni=i!(n−i)!n!
这是一个二维的递推式,所以我们的递推式如下:
C 1 0 = 1 C 1 1 = 1 C n i = C n − 1 i − 1 + C n − 1 i \begin{aligned} C_1^0&=1\\ C_1^1&=1\\ C_n^i&=C_{n-1}^{i-1} + C_{n-1}^{i} \end{aligned} C10C11Cni=1=1=Cn−1i−1+Cn−1i
证明如下:(规定 0 ! = 1 0!=1 0!=1)
1、 C 1 0 = 1 ! 0 ! ( 1 − 0 ) ! = 1 C_1^0=\frac{1!}{0!(1-0)!}=1 C10=0!(1−0)!1!=1, C 1 1 = 1 ! 1 ! ( 1 − 1 ) ! = 1 C_1^1=\frac{1!}{1!(1-1)!}=1 C11=1!(1−1)!1!=1
2、令 r < n r<n r<n,由递推式可以得到
C r + 1 i = C r i − 1 + C r i = r ! ( i − 1 ) ! ( r − i + 1 ) ! + r ! i ! ( r − i ) ! = i r ! + ( r + 1 − i ) r ! i ! ( r + 1 − i ) ! = ( r + 1 ) ! i ! ( r + 1 − i ) ! \begin{aligned} C_{r+1}^i&=C_{r}^{i-1}+C_{r}^i\\ &=\frac{r!}{(i-1)!(r-i+1)!} + \frac{r!}{i!(r-i)!} \\ &=\frac{ir! + (r+1-i)r!}{i!(r+1-i)!} \\ &=\frac{(r+1)!}{i!(r+1-i)!} \end{aligned} Cr+1i=Cri−1+Cri=(i−1)!(r−i+1)!r!+i!(r−i)!r!=i!(r+1−i)!ir!+(r+1−i)r!=i!(r+1−i)!(r+1)!
命题得证
总结
数学归纳法仅能用于证明某个通项公式成立,但是却没有揭示这个通项公式是怎么来的,也没有提供任何的线索。但是仅仅能够证明某个命题为真,也可为未来的使用扫清障碍。创造性的部分,往往需要用到经验、直觉、类比、天赋和运气,并没有一般的规律可循。
递推式是一种分治法的计算公式,即将问题规模为 n 的问题,分解为问题规模为 n - 1 的问题,直到将问题分解到最简单的形式。
如何优雅地使用数学归纳法相关推荐
- 如何优雅的在python中暂停死循环?
死循环 有时候在工作中可能会遇到要一直执行某个功能的程序,这时候死循环就派上用途了,python中死循环的具体形式大致如下 while True:run_your_code() 结束死循环 通常我们结 ...
- 如何通过HTTP优雅调用第三方-Feign
Java常用HTTP客户端 Java原生HttpURLConnection Apache HttpClient OkHttp Spring RestTemplate 示例 public interfa ...
- 如何更优雅地对接第三方API
如何更优雅地对接第三方API 本文所有示例完整代码地址:https://github.com/yu-linfeng/BlogRepositories/tree/master/repositories/ ...
- java redis管理_优雅时间管理Java轻松做到,想学么?
原标题:优雅时间管理Java轻松做到,想学么? 来源 |http://rrd.me/gCQHp 前言:需求是这样的,在与第三方对接过程中,对方提供了token进行时效性验证,过一段时间token就会失 ...
- 拒绝了我们的连接请求_职场上,我们该如何巧妙而优雅的拒绝同事忙的请求呢?...
Hi!点击上方 李香浓Shannon 关注我:) 态度对人 说话对事 --知心美容院 如何优雅拒绝,同事的不合理请求? 点击视频查看? 面对同事的不合理请求 如何正确地拒绝,你学会了吗? Total ...
- java build path entries 为空_同事的代码简直没法看,我来教你如何更优雅的设计Java异常...
点击上方蓝色字体,选择"设为星标" 回复"666"获取面试宝典 异常处理是程序开发中必不可少操作之一,但如何正确优雅的对异常进行处理确是一门学问,笔者根据自己的 ...
- java 逻辑校验工具_SpringBoot2.0实战(10)整合fluent-validator优雅业务校验
相关知识 FluentValidator是一个工具类库,使用流式(Fluent Interface)调用风格让校验跑起来更优雅,代码更简洁,同时验证器(Validator)可以做到开闭原则,实现最大程 ...
- 用代码优雅的终止springboot服务
用代码优雅的终止springboot服务 1. 法一: configurableApplicationContext.close() 2. 法二: System.exit(SpringApplicat ...
- 新的工作电脑 神州优雅A550-i7
新的工作电脑,神州优雅A550-i7,也推荐给大家,只想讲给大家买神州很好,一点也不丢脸,不要为了牌子多花钱,世界上80%的笔记本出自中国(包括台湾),我们应该支持价廉物美. 我评价A550-i7 价 ...
最新文章
- C++ 学习笔记之——文件操作和文件流
- Ubuntu(Linux)上安装ROS缓慢,解决方法:添加ros的国内镜像源,以及ROS安装过程使用rosdep update出现错误:‘The read operation timed out‘
- CSDN在文章头部添加目录
- vue组件库(一):前期准备工作
- Java - 泛型 ( Generic )
- CCF NOI1118 序列第K小
- hdu--2660--二维费用背包
- linux系统 (实验二)实验楼的课程笔记
- Vue:列表渲染 v-for on a template
- 通讯录系统课程设计——链表实现——c语言
- 用链表写的一个通讯录
- 把14亿中国人民都拉到一个微信群里在技术上能实现吗?
- 苹果6能解掉id锁吗_iPhone进水保修吗?苹果官方正式回应了
- 从《象形拳法真诠》看王芗斋与薛颠
- springboot异步调用demo
- 绩效考核过程中会遇到的问题
- 【LeetCode - 马化腾】第一次看到马总的代码
- [资源分享][Unity][人物模型][动作]一些人物模型以及动作的分享
- 四平方和定理(每个正整数均可表示为4个平方数的和)
- UOS系统怎么进入开发者模式教程
热门文章
- Postgres-XL9.5简介与集群部署
- 如何在30岁前年薪超过30万
- 基于SSH物流资源管理系统
- 高科技产业如何绿化数据中心
- 长度最小的子数组 典型双指针LeetCode_209
- 书生教你cocos2d-x-保卫萝卜(二)
- optimization_pass.cc:185] None of the MLIR Optimization Passes are enabled (registered 2)解决办法
- 在VScode上运行第一个R程序
- 【搜索进阶】HDU 1667 The Rotation Game
- cmos可以修改计算机的硬件配置参数吗,(计算机CMOS设置详解1.doc