# 归纳 & 递归

# 数学归纳法

2020-1-10-16-29-37.png

2020-1-10-17-51-31.png

# 利用数学归纳法证明的例子

# 证明求和公式

2020-1-10-17-55-38.png

例子:

2020-1-10-17-56-12.png

2020-1-10-17-56-31.png 2020-1-10-17-57-1.png 2020-1-10-17-57-28.png 2020-1-10-17-57-45.png

# 证明不等式

例子:

2020-1-10-17-59-50.png 2020-1-10-18-0-11.png

# 证明整除性结论

例子:

2020-1-10-18-0-39.png

# 证明有关算法的结论

例子:

2020-1-10-18-0-59.png

# 使用数学归纳法时犯的错误

2020-1-10-18-4-48.png

例子:

2020-1-10-18-4-32.png 2020-1-10-18-4-57.png

# 运用数学归纳法证明的原则

2020-1-10-18-5-17.png

# 强归纳法 & 良序性

# 强归纳法

2020-1-10-18-10-31.png

2020-1-10-18-13-34.png

2020-1-10-18-14-24.png

例子:

2020-1-10-18-16-21.png 2020-1-10-18-16-29.png

# 利用强归纳法的例子

2020-1-10-18-19-56.png

例子:

2020-1-10-18-20-53.png

2020-1-10-18-21-43.png

# 计算几何学中使用强归纳法

2020-1-10-18-24-24.png

2020-1-10-18-25-59.png

2020-1-10-18-26-24.png

2020-1-10-18-27-5.png

# 利用良序性证明

数学归纳法原理和强归纳法的有效性源于整数集合的基本公理『 良序性公理 』

良序性公理:任意一个非空的非负整数集合都有最小元素

例子:

2020-1-10-18-30-7.png

# 递归定义 & 结构归纳法

有时难以用明确的方式来定义一个对象。不过,用这个对象来定义它自身,这也许是容易的。这种过程称为递归。

# 递归地定义函数

为了定义以非负整数集合作为其定义域的函数,使用两个步骤:

2020-1-10-18-34-54

例子:

2020-1-10-18-35-9.png

2020-1-10-18-35-41.png

例子:

2020-1-10-18-36-26.png 2020-1-10-18-36-42.png

例子:

2020-1-10-18-38-32.png

# 递归地定义集合与结构

2020-1-10-18-40-38.png

例子:

2020-1-10-18-41-9.png

2020-1-10-18-41-51.png

例子:

2020-1-10-18-43-17.png 2020-1-10-18-43-56.png 2020-1-10-18-44-9.png 2020-1-10-18-44-23.png

# 结构归纳法

例子:

2020-1-10-18-46-58.png

2020-1-10-18-47-13.png

例子:

2020-1-10-18-47-57.png 2020-1-10-18-48-5.png

# 递归算法

定义:

2020-1-10-20-16-9.png

例子:

2020-1-10-20-16-34.png

2020-1-10-20-16-55.png 2020-1-10-20-17-6.png 2020-1-10-20-17-20.png 2020-1-10-20-17-28.png

# 证明递归算法的正确性

“数学归纳法” 和 “强归纳法”,都可以证明一个递归算法的正确性,即可以证明算法对所有可能的输入值,都能产生所需要的输出。

例子:

2020-1-10-20-19-2.png 2020-1-10-20-19-11.png

# 递归与迭代

2020-1-10-20-46-52.png

2020-1-10-20-47-3.png

# 归并排序

2020-1-10-20-49-9.png

2020-1-10-20-49-40.png

2020-1-10-20-49-22.png

例子:

2020-1-10-20-50-57.png 2020-1-10-20-51-5.png

2020-1-10-20-51-53.png

2020-1-10-20-52-18.png

2020-1-10-20-52-40.png

# 程序正确性

# 程序验证

2020-1-10-20-53-32.png

定义:

2020-1-10-20-54-3.png

例子:

2020-1-10-20-54-17.png 2020-1-10-20-54-25.png

# 推理规则

一条有用的推理规则是通过把一个程序分成一系列子程序,然后证明每个子程序为正确的来证明这个程序为正确的。

例子:

2020-1-10-20-56-11.png

# 条件语句

2020-1-10-20-56-24.png

例子:

2020-1-10-20-56-52.png

2020-1-10-20-57-2.png

例子:

2020-1-10-20-57-15.png

# 循环不变量

2020-1-10-20-57-30.png

例子:

2020-1-10-20-57-50.png

上次更新: 1/11/2020, 9:58:41 AM