演算法提公升模組一(遞迴)

2021-09-11 17:06:56 字數 698 閱讀 7394

1、什麼是遞迴演算法

遞迴演算法就是直接或間接的呼叫自己的演算法。

2、一列數的規則如下: 1、1、2、3、5、8、13、21、34 ,求第30位數是多少?使用遞迴實現

public class test2 

public int getnum(int n)else

}}

3、漢諾塔問題

漢諾塔(又稱河內塔)問題其實是印度的乙個古老的傳說。

開天闢地的神勃拉瑪(和中國的盤古差不多的神吧)在乙個廟裡留下了三根金剛石的棒,第一根上面套著64個圓的金片,最大的乙個在底下,其餘乙個比一 個小,依次疊上去,廟裡的眾僧不倦地把它們乙個個地從這根棒搬到另一根棒上,規定可利用中間的一根棒作為幫助,但每次只能搬乙個,而且大的不能放在小的上 面。計算結果非常恐怖(移動圓片的次數)18446744073709551615,眾僧們即便是耗盡畢生精力也不可能完成金片的移動了。

要求:輸入乙個正整數n,表示有n個碟片在第一根柱子上。輸出操作序列,格式為「移動 t從 x 到 y」。每個操作一行,表示把x柱子上的編號為t的碟片挪到柱子y上。柱子編號為a,b,c,你要用最少的操作把所有的盤子從a柱子上轉移到c柱子上。

public class hanoitest else 

}public static void main(string args)

}

演算法一 遞迴

include includeint main int argc,char argv void convertto char s,int integer,int b int len if 0 integer convertto s,integer b,b len strlen s s len bit...

基礎演算法 遞迴 一

1.漢諾塔 include using namespace std void fac int n,char a,char b,char c int main 2.普通揹包問題 設有乙個揹包可以放入的物品重量為s,現有n件物品,重量 分別是w1 w2,w3 wn 問能否從這 n件物品中選擇若干件 放入...

演算法解讀 遞迴(一)

演算法的最重要的是演算法設計的模型,以及該模型背後的設計思想。定義 遞迴從程式設計的角度上理解 遞迴就是乙個過程或者函式在其定義中直接或間接呼叫自身的一種方法。遞迴是一種用來描述問題和解決問題的基本方法。特點 通常把乙個大型複雜的問題層層轉化為乙個與原問題相似的規模較小的問題來求解。一般說來,遞迴需...