什麼是遞迴

2021-10-19 21:41:38 字數 937 閱讀 4711

迴圈 for (起始條件;迴圈終止條件;迴圈條件變化 ) === 》

遞迴:遞迴起始條件: func_recursive(n); ;有使遞迴趨於結束的語句:func_recursive(++n) ; 遞迴終止條件 n == 9

#include

#include

#include

// 直接或是或是間接呼叫自己的情形,就遞迴呼叫。recursive

// 遞迴,是比較接近自然語言特性的一種呼叫方式。遞迴必須要用合理的出口,不然會掛掉

//迴圈 === 》 遞迴:遞迴起始條件:func_recursive(n) 有使遞迴趨於結束的語句:func_recursive(++n) 遞迴終止條件 n == 9

intfunc_recursive

(int n)

else

}int

main()

printf

("**********一樣一樣的*****************\n");

// 迭代

遞迴和迴圈,有共同的特點,有起點,有終點,重複作同樣的事情。

所以很多情況,兩者是可以相互轉換的。

如果上公升一下理論高度,作乙個重複面有明確起點和終點的事,有遞迴和迭代兩種選擇。

迴圈其實就是一種迭代。

遞迴的方式,寫法比較簡潔,符合正常邏輯,但**理解難度大,記憶體消耗大(易導致棧溢位)

所以能用迭代(lterative)解決的問題,不要用遞迴來完成。

什麼是遞迴 先了解什麼是遞迴

一說起遞迴,我想每個人都不陌生。舉個從小就聽過的例子 從前有座山,山里有座廟,廟裡有個和尚,和尚在講故事,從前有座山,山里有座廟,廟裡有個和尚,和尚在講故事,從前有座山 還有你從兩面相對的鏡子中看到的畫面,其實都是抽象出來的遞迴現象,但是嚴格來說並不是遞迴,因為會一直重複下去,沒有終止條件,那就稱為...

什麼是遞迴 先了解什麼是遞迴

原文 一說起遞迴,我想每個人都不陌生。舉個從小就聽過的例子 從前有座山,山里有座廟,廟裡有個和尚,和尚在講故事,從前有座山,山里有座廟,廟裡有個和尚,和尚在講故事,從前有座山.還有你從兩面相對的鏡子中看到的畫面,其實都是抽象出來的遞迴現象,但是嚴格來說並不是遞迴,因為會一直重複下去,沒有終止條件,那...

什麼是遞迴 先了解什麼是遞迴

歡迎閱讀我的個人部落格,有更好的排版和文章 一說起遞迴,我想每個人都不陌生。舉個從小就聽過的例子 從前有座山,山里有座廟,廟裡有個和尚,和尚在講故事,從前有座山,山里有座廟,廟裡有個和尚,和尚在講故事,從前有座山.還有你從兩面相對的鏡子中看到的畫面,其實都是抽象出來的遞迴現象,但是嚴格來說並不是遞迴...