算法第四版 练习答案 1.4.1
題目
證明從N個數中,取出3個整數的不同組合的總數為N(N-1)(N-2)/6
 提示 使用數學歸納法
分析
百度了下什么是數學歸納法:
 數學歸納法(Mathematical Induction, MI)
 是一種數學證明方法,通常被用于證明某個給定命題在整個(或者局部)自然數范圍內成立
 原理
 最簡單和常見的數學歸納法是證明當n等于任意一個自然數時某命題成立。證明分下面兩步:
 證明當n= 1時命題成立。
 假設n=m時命題成立,那么可以推導出在n=m+1時命題也成立。(m代表任意自然數)
 這種方法的原理在于:首先證明在某個起點值時命題成立,然后證明從一個值到下一個值的過程有效。當這兩點都已經證明,那么任意值都可以通過反復使用這個方法推導出來。把這個方法想成多米諾效應也許更容易理解一些。
 例如:你有一列很長的直立著的多米諾骨牌,如果你可以:
 證明第一張骨牌會倒。
 證明只要任意一張骨牌倒了,那么與其相鄰的下一張骨牌也會倒。
 骨牌一個接一個倒下就如同一個值接下一個值
 骨牌一個接一個倒下就如同一個值接下一個值
 那么便可以下結論:所有的骨牌都會倒下
 解題要點
 數學歸納法對解題的形式要求嚴格,數學歸納法解題過程中,
 第一步:驗證n取第一個自然數時成立
 第二步:假設n=k時成立,然后以驗證的條件和假設的條件作為論證的依據進行推導,在接下來的推導過程中不能直接將n=k+1代入假設的原式中去。
 最后一步總結表述。
證明過程
證明1:數學歸納法第一步:證明從N個數中,取出2個整數的不同組合的總數為N(N-1)2
 (1)假設n=2和n=3
 從2個整數中,取2個整數的總數只有1種,符合21/2=1
 從3個整數中,取2個整數的總數3種,32/2=3種,符合
 (2)假設a從N個整數中取出2個整數的不同組合的總數為N(N-1)2
 那么從N+1個整數中取出2個整數的不同組合的總數可以分成兩部分
 一部分是從N個整數中取出2個整數的不同組合的總數為N(N-1)2
 另一部分是必須包含第N+1元素,另外一個元素可以隨意取的情況(范圍從1到N),那么這一部分的數量為N
 把上述兩個部分相加得到
 從N+1個整數中取出2個整數的不同組合的總數為N(N-1)/2+N=N(N+1)/2
 (3)而假設二a中f(n)=n(n-1)/2;f(n+1)=(n+1)*2/2
 上面兩者是相等的,因此數學歸納法就可以得出證明從N個數中,取出2個整數的不同組合的總數為N(N-1)2
第二步:證明從N個數中,取出3個整數的不同組合的總數為N(N-1)(N-2)/6
 (1)假設N=3和N=4
 從3個整數中,取3個整數的總數只有1種,符合321/6=1
 從4個整數中,取3個整數的總數4種,符合432/6=4
 比如有數字1,2,3,4.那么只有4種可能(1,2,3);(1,2,4);(1,3,4);(2,3,4)
 (2)假設b從N個數中,取出3個整數的不同組合的總數為N(N-1)(N-2)/6
 那么從N+1個整數中取出3個整數的不同組合的總數可以分成兩部分
 第一部分:不包含第N+1元素的,有f(n)即假設b…f(n)=N(N-1)(N-2)/6個
 第二部分:包含第N+1元素的,那么另外2個數只能從N個元素中取,即第一步我們證明的結論:從N個數中,取出2個整數的不同組合的總數為N(N-1)2
 把上述的一二部分相加N(N-1)(N-2)/6+N(N-1)/2=(N的三次方-N)/6
 (3)根據假設f(n)=N(N-1)(N-2)/6,那么
 f(n+1)=(N+1)N(N-1)/6,
 上面兩者是相等的,因此數學歸納法就可以得出證明從N個數中,取出3個整數的不同組合的總數為N(N-1)(N-2)/6
區別
 Combine,組合,不分順序,組合比排列所取得的種數更少。如5取3,C(5,3)=5!/(3!(5-3)!)=5!/(3!2!)=(543)/(321)
Arrange,排列,區分順序,因而排列比組合取得的種數更多。比如5取3。A(5,3)=5!/(5-3)!=5!/2!=543
公式:
 n>m,即從n中取m個
排列:A(n,m)=n!/(n-m)!
 組合:C(n,m)=n!/(m!*(n-m)!) 即C(n,m)=A(n,m)/m!
 
總結
以上是生活随笔為你收集整理的算法第四版 练习答案 1.4.1的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 英语总结系列(二十三):Baby上海一月
- 下一篇: java 离线语音识别
