1. 程式人生 > >漢諾塔學習筆記,有不正確的地方請小夥伴們指正~·~

漢諾塔學習筆記,有不正確的地方請小夥伴們指正~·~

學習 順序執行 == cab -1 nbsp 什麽 猜想 abc

1* n=3.abc; 2* n-1=2,acb; 3* n-1=1,abc 1* n=3,執行hanoi(n-1,A,C,B); =>2* n-1=2,acb執行hanoi(n-1,A,C,B); =>3* n-1=1,abc執行if(n==1) 輸出(n=1)A-》c 返回2* acb 輸出 2 a-》b執行 hanoi(n-1,B,A,C); =》n-1=1,cab 輸出(n=1)c-》b 返回1* abc 輸出 3 a->c 順序執行 hanoi(n-1,B,A,C);=》n-1=2 ,bac (4*) 順序執行hanoi(n-1,A,C,B) ; =》n-1=1,bca 輸出 (n=1)b->a 返回4* n=2 ,bac 輸出 2 b-》c 順序執行 hanoi(n-1,B,A,C); =》n-1=1,abc 輸出 (n=1)a-》c ps:為什麽要返回4*? 猜想:n=2時,保留下來,去執行 hanoi(n-1,A,C,B); n-1=1, 之後返回執行n=2 也可以理解為從1開始執行,像蓋金字塔一樣

漢諾塔學習筆記,有不正確的地方請小夥伴們指正~·~