最简单和常见的数学归纳法是证明当n等于任意一个自然数时某命题成立。证明分下面两步:
- 证明当 n= 1 时命题成立。
- 假设 n=m 时命题成立,那么可以推导出在 n=m+1 时命题也成立。(m代表任意自然数)
1. 图
设
G=(V, E)
为一个有向图或无向图,假定 BFS 以给定结点 s∈V 作为源节点在图 G 上运行。则在 BFS 终结时,对于每个结点 v∈V ,BFS 计算得到的 v.d 满足 v.d≥δ(s,v) ( δ(s,v) : s 到v 的最短路径, v.d :以 BFS 的方式从源点出发到 v 之间的距离)。以数学归纳法的方式进行证明,此外还需理解的细节即是,BFS 的方式需借助先进先出的队列,其最核心的两个操作,enqueue 与 dequeue。我们的归纳假设是:对于所有的结点
v∈V , v.d≥δ(s,v)enqueue(G, u),从结点 u 进行邻接表搜索时发现了结点 v(u 可以到 v,根据三角不等式性, δ(s,v)≤δ(s,u)+1 ),根据归纳法假设有 u.d≥δ(s,u) ,根据符号 .d 的定义知, v.d=u.d+1 ,因此:
v.d=u.d+1≥δ(s,u)+1≥δ(s,v)证明:任意连通无向图 G=(V,E) 满足 |E|≥|V|−1
- 当只有一个顶点时, |E|=0,|V|=1 ,显然成立;
- 因为是连通的,故取出一个顶点( |V′|=|V|−1 ),以及与之相连的边(不只一个 |E|≥1+|E′| ),构成一个新的子图 G′=(V′,E′) ,根据数学归纳法,则有: