證明從n個數中,取出3個整數的不同組合的總數為n(n-1)(n-2)/6
提示 使用數學歸納法
最簡單和常見的數學歸納法是證明當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
證明方法2
區別
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 2
修改threesum,正確處理兩個較大的int值相加可能溢位的情況 首先jdk中定義int佔4個位元組,32位 後面全部的計算都是以此為根據的 32位就是jvm僅僅給分配32個格仔的空間,用以存放資料。總所周知計算機中用0和1存放資料。那麼,32個格仔中放滿0或1的方法 有2的32次方種 或者說32...
演算法 第四版 練習1 3 40解答
前移編碼。從標準輸入讀取一串字元,使用鍊錶儲存這些字元並清除重複字元。當你讀取了乙個從未見過的字元時,將它插入表頭。當你讀取了乙個重複的字元時,將它從鍊錶中刪去並再次插入表頭。將你的程式命名為movetofront 它實現了著名的前移編碼策略,這種策略假設最近訪問過的元素很可能會再次訪問,因此可以用...
演算法 第四版 練習1 2 10解答
1.編寫乙個類visualcounter,支援加一和減一操作。2.它的建構函式接受兩個引數n和max,其中n指定了 操作的最大次數,max指定了計數器的最大絕對值。3.作為 用影象顯示每次計數器變化後的值。看得懂1和2,看不懂3,1和2的函式好寫,3不知道什麼意思 通過看別人的答案才知道3就是函式 ...