C 遞迴演算法

2022-01-22 07:39:46 字數 478 閱讀 7594

前幾天用到了遞迴遍歷資料夾,所以今天就又找了兩道遞迴的例子做了下,首先是0加到100:

private

static

int digui1(int j)

然後是求第三十位:

private

static

int digui(int j)

雖然很順利算出來了,但遞迴的效率確實特低,那第二個例子來說,定義了乙個全域性變數監視遞迴呼叫的次數發現獲得第30個

元素的時候竟然呼叫自己2692537次,而算100第一百位的時候等了n久就是算不出來...可能是我電腦太水了(貌似超出了int能表示的範圍...)?

然而用迴圈做的:

private

static

int digui(int j)

雖然沒有像遞迴那樣簡潔,但執行速度比那個快多了。

C 遞迴演算法

首先碰到的是這樣的一首題目 計算陣列 第30位值,歸遞演算法來寫,十分明了。以下是 static void main string args public static int process1 int i 第30位值 if i 0 return 0 if i 1 return 1 else ret...

C 遞迴演算法!

1 static void main string args 2 7 public static int process1 int i 1 static void main string args 2 7 public static int process1 int i 8 第30位值 14 if ...

c 遞迴演算法

c 題目如下 要求輸出 1,2,3,5,8,13,21,34,55,89 寫法一 public class myclass string ssum for int i 0 i csum.length i snippet compliler除錯通過 這樣寫雖然能實現,但是感覺不大好,重構,用遞迴寫法 ...