1. 程式人生 > 其它 >簡單理解遞迴

簡單理解遞迴

技術標籤:演算法c++

遞迴:現在的一些高階語言具有著可以在函式內部呼叫函式自身的功能,在一些場合中可以完成簡化程式碼實現!下面簡單的講一下自己對於遞迴的理解!

遞迴的實現一般分為三個步驟:在程式碼實現的時候一般需要按照這個步驟實現。

  1. 明確遞迴函式的作用
  2. 遞迴的終止條件
  3. 找到關係式,讓其最終可以達到遞迴的終止條件!

下面詳細講解一下需要如何操作!
首先明確函式的作用:例如拿對應的斐波那契數列而言,問題就是需要求解處對應的數列讓其滿足當前的下標值n>3的情況下,當前下表對應的函式值是前兩者的函式的之和。當 1 1 2 3 5 8…
那麼這個遞迴函式的作用就是需要求解滿足該條件下的任意的數值的對應的下標的值。

int fib(int n)
{
	return f(n);//其中的f(n)的值就是對應的下標為n的值對應的斐波那契數列的值。
}

遞迴的終止條件:遞迴的終止條件就是必須有一個最初的初始化的值,然後達到對應的初始化的時候然後可以完成函式的返回實現。

int fib(int n)
{
	if(n == 1 && n == 2)
		return n;
	else
		return fib(n - 1) + fib(n - 2);
}

其中的函式方式返回的值的對應的終止條件,即當其中的n的值為1、2的時候便可以完成返回!

其中的函式終止條件:對應的函式方法實現的時候,求解簡化的方法實現,即不斷推斷其中的值實現,然後完成對應的值求解。也就是上面的程式碼完成!

return fib(n-1) + fib(n-2);

一般求解的時候則必須按照上面的上個步驟方式來進行求解,這樣求解的時候則可以完成程式碼的實現。