遞迴與迭代的區別

2021-08-08 04:49:31 字數 541 閱讀 8031

遞迴和迭代都是迴圈的一種。

遞迴是重複呼叫自身函式實現迴圈;迭代是函式內某段**實現迴圈。迭代與普通迴圈的區別是:迭代迴圈中,參與運算的變數同時是儲存結果的變數,當前儲存的結果做為下一次迴圈的初始值(如:v=v+1)。

遞迴與迭代都是基於控制結構:迭代用重複結構,而遞迴用選擇結構。

遞迴與迭代都涉及重複:迭代顯式使用重複結構,而遞迴通過重複函式呼叫實現重複。

遞迴與迭代都涉及終止測試:迭代在迴圈條件失敗時終止,遞迴在遇到基本情況時終止。

使用計數器控制重複的迭代和遞迴都逐漸到達終止點:迭代一直修改計數器,直到計數器值使迴圈條件失敗;遞迴不斷產生最初問題的簡化副本,直到達到基本情況。迭代和遞迴

過程都可以無限進行:如果迴圈條件測試永遠不變成false,則迭代發生無限迴圈;如果遞迴永遠無法回推到基本情況,則發生無窮遞迴。

遞迴函式是通過呼叫函式自身來完成任務,而且在每次呼叫自身時減少任務量。而迭代是迴圈的一種形式,這種迴圈不是由使用者輸入而控制,每次迭代步驟都必須將剩餘的任務減

少;也就是說,迴圈的每一步都必須執行乙個有限的過程,並留下較少的步驟。

遞迴與迭代的區別

遞迴的基本概念 程式呼叫自身的程式設計技巧稱為遞迴,是函式自己呼叫自己.乙個函式在其定義中直接或間接呼叫自身的一種方法,它通常把乙個大型的複雜的問題轉化為乙個與原問題相似的規模較小的問題來解決,可以極大的減少 量.遞迴的能力在於用有限的語句來定義物件的無限集合.使用遞迴要注意的有兩點 1 遞迴就是在...

遞迴與迭代的區別

遞迴的基本概念 程式呼叫自身的程式設計技巧稱為遞迴,是函式自己呼叫自己.乙個函式在其定義中直接或間接呼叫自身的一種方法,它通常把乙個大型的複雜的問題轉化為乙個與原問題相似的規模較小的問題來解決,可以極大的減少 量.遞迴的能力在於用有限的語句來定義物件的無限集合.使用遞迴要注意的有兩點 1 遞迴就是在...

遞迴與迭代的區別

以下是乙個用遞迴階乘的例項 include intcal int num if num 0 return num cal num 1 此處開始自身呼叫 int main 再來乙個斐波那契數列的遞迴函式 include intcal int n return cal n 1 cal n 2 對此,總結...