《具體數學》習題1.3的問題?

河內塔問題的一個擴展 3個柱子 A B C 開始的時候所有盤子從大到小從下往上放置在A 現在規定所有盤子不能在A和C之間直接移動 最後把A上的盤子移動到C 求證在移動過程中 B上必定出現過所有盤子正確放置的時刻

書後答案的意思是 3個柱子 所有盤子不考慮順序 一共有3^n種排法 而正確移動完成的最少步數是3^n-1次 加上初始狀態 正好是3^n次 所以必定會出現所有排列的每一種 所以求證的情況當然也會出現

我的問題是 這個證法難道不是先要確保 移動過程中出現的排列沒有重複嗎? 我用兩個盤子模擬了一下 確實沒有重複 那這其中的原理是什麼呢?為什麼按照規則移動過程中 不會出現重複現象?


總感覺你證明最小步數的時候就應該已經證出來了,這是個典型的遞歸過程,移動n塊盤子從1到3時,先將n-1塊從1移到3,將最底下移到2,將n-1塊從3移到1,將最底下移到3,再將n-1塊從1移到3,用數學歸納法立即得證。
這種移動方法其實是一種三進位的格雷碼,除了頭和尾以外,任意一個狀態都只有兩種移動方法,一種往前一種往後,形成一條鏈。


如果在移動中出現狀態重複,就意味著這個移動方法不是最優的,矛盾。


提供一種不需要反證法的思路。

考慮移動N塊盤子時,由於將第N塊從A移動至B時,前N-1塊必定在C處;
而將第N塊從B移動至C處時,前N-1塊必定在A處。因此前N-1塊分別在第N塊在B與不在B兩種情況下經過了B,所以只要證問題規模為N-1時,B上出現了N-1塊的所有組合過程。
我們可以反覆遞歸這個過程,直到問題規模為一時顯然成立即可。


如果最少步數中有重複的格局,那麼這兩個格局之間的步驟就是多餘的,那麼就不是最少步數了…所以3^n-1加上初始格局每一個必須不同,最多又只有3^n種格局…


題外話,竟然還有學習具體數學的。。。
想我大二上努力攻讀,還是在第五章崩潰了。。。


推薦閱讀:

如何推導正態分布的概率密度函數?
一堆密堆積的球之間的間隙在一起看起來是什麼樣子的?
為什麼物理學定律可以由數學公式寫成?
假設水的密度不隨空間的變化而變動,要充滿整個宇宙,需要多少體積的水?

TAG:數學 | 編程 | 趣味數學 | 離散數學 | 具體數學書籍 |