1樓:織田姓李
詳細解釋。
遞迴數列 (recursive sequence ):一種用歸納方法給定的數列。 例如,等比數列可以用歸納方法來定義,先定義第一項 a1 的值( a1 ≠ 0 ),對 於以後的項 ,用遞推公式an+1=qan (q≠0,n=1,2,…)給出定義。
一般地,遞迴數列的前k項a1,a2,…,ak為已知數,從第k+1項起,由某一遞推公式an+k=f(an,an+1,…,an+k-1) (n=1,2,…)所確定。k稱為遞迴數列的階數。例如 ,已知 a1=1,a2=1,其餘各項由公式an+1=an+an-1(n=2,3,…)給定的數列是二階遞迴數列。
這是斐波那契數列,各項依次為 1 ,1 ,2 ,3,5 ,8 ,13 ,21 ,…同樣 ,由遞迴式an+1-an =an-an-1( a1,a2 為已知,n=2,3,… 給定的數列,也是二階遞迴數列,這是等差數列。
遞推數列。遞推公式:如果數列{an}的第n項與它前一項或幾項的關係可以用一個式子來表示,那麼這個公式叫做這個數列的遞推公式。 用遞推公式表示的數列就叫做遞推數列 比如等比數列an=a1*q^(n-1)可以表示為:
an=q*an-1
2樓:網友
他們都是一個意思,沒有什麼區別。都是通過已知的項和遞推式,得到一個無窮多項的數列。
望採納,謝謝。
遞推數列和遞迴數列有啥區別
3樓:匿名使用者
遞推=iterative;遞迴=recursive
遞迴指自我呼叫的函式;遞推指重複進行的過程,這個重複的過程可以是,有自我呼叫的函式的重複的自我呼叫,也可以是其它過程。
遞迴,遞推,迭代有什麼區別?
4樓:落日_餘暉
程式呼叫自身的程式設計技巧稱為遞迴。遞迴做為一種演算法在程式設計語言中廣泛應用。 一個過程或函式在其定義或說明中有直接或間接呼叫自身的一種方法,它通常把一個大型複雜的問題層層轉化為一個與原問題相似的規模較小的問題來求解,遞迴策略只需少量的程式就可描述出解題過程所需要的多次重複計算,大大地減少了程式的**量。
遞推演算法是一種用若干步可重複的簡運算(規律)來描述複雜問題的方法。遞推是序列計算機中的一種常用演算法。它是按照一定的規律來計算序列中的每個項,通常是通過計算機前面的一些項來得出序列中的指定象的值。
迭代是重複反饋過程的活動,其目的通常是為了逼近所需目標或結果。每一次對過程的重複稱為一次「迭代」,而每一次迭代得到的結果會作為下一次迭代的初始值。
什麼是遞推數列,遞推數列有幾種形式
5樓:釁邁
就比如說要求a2就不需知道a1的結果,通項公式裡面不含n的,而是含前一項的數。
數列的通項公式與遞推公式有什麼區別
6樓:脫箍鍬勘
按一定次序排列的一列數稱為數列,而將數列 的第n項用一個具體式子(含有引數n)表示出來,稱作該數列的通項公式。
如果數列的第n項與它前一項或幾項的關係可以用一個式子來表示,那麼這個公式叫做這個數列的遞推公式。
7樓:刀希烏修竹
數列的通項公式可以直接根據n的值得出任何一項的值,而遞推公式必須知道前一項的值才能得出後一項的值。
遞迴與迭代(遞推)有什麼區別
8樓:匿名使用者
zwu說到點子上了。
遞迴是自頂向下逐步拓展需求,最後自下向頂運算。即由f(n)拓展到f(1),再由f(1)逐步算回f(n)
迭代是直接自下向頂運算,由f(1)算到f(n)。
9樓:愛染年
遞迴:程式呼叫的程式設計技巧叫做遞迴。遞迴做為一種演算法在程式設計語言中廣泛應用。
一個過程或函式在其定義或說明中有直接或間接呼叫自身的一種方法,通常把一個大型複雜的問題層層轉化為一個與原問題相似的規模較小的問題來求解,遞迴策略只需少量的程式就可描述出解題過程所需要的多次重複計算,大大地減少了程式的**量。
遞推:遞推演算法是一種用若干步可重複的簡運算(規律)來描述複雜問題的方法。遞推是序列計算機中的一種常用演算法。
按照一定的規律來計算序列中的每個項,通常是通過計算機前面的一些項來得出序列中的指定象的值。
迭代:迭代是重複反饋過程的活動,其目的通常是為了逼近所需目標或結果。每一次對過程的重複稱為一次「迭代」。
從理論上說,所有的遞迴函式都可以轉換為迭代函式,反之亦然,然而代價通常都是比較高的。當遞迴次數較多時,記憶體佔用也會隨之增加。
遞迴與遞推的區別:
遞迴整體是分為兩步的:1.向下遞推直到限制條件到了。2.回溯結果。
遞推:從初始態出發,不斷改變自身的過程。
遞迴與迭代的區別例子:
(1)分別用遞迴法和迭代法求階乘。
#include
// 遞迴計算階乘。
long factorial_recursion(int n)else
} /迭代計算階乘。
long factorial_iteration(int n)
return result;
}(2)分別用遞迴法和迭代法求斐波那契數列。
//使用遞迴的方法實現。
long long fibonacci_recursive(int n)
//使用迭代的方法實現。
long long fibonacci_iteration(int n) ;
int i = 2;
long long num = 0;
if(n < 2)
long long fib_minusone = 1;
long long fib_minustwo = 0;
for(;i <=n;i++)
return num;
}歸是在不斷的呼叫,從最終態不斷找到最初態,然後不斷回溯的過程。
遞推是沒有回溯這個過程的。
10樓:出溥心
遞迴是在函式內呼叫本身,迭代是迴圈求值,不推薦使用遞迴演算法。
遞推演算法和遞迴演算法有什麼區別
11樓:戢綠柏
1、演算法的過程不同。
遞推演算法是一種簡單的演算法,即通過已知條件,利用特定關係得出中間推論,直至得到結果的演算法。
遞迴演算法在電腦科學中是指一種通過重複將問題分解為同類的子問題而解決問題的方法。遞迴式方法可以被用於解決很多的電腦科學問題,因此它是電腦科學中十分重要的一個概念。
2、遞推演算法免除了資料進出棧的過程。
遞推與遞迴的比較相對於遞迴演算法,遞推演算法免除了資料進出棧的過程,也就是說,不需要函式不斷的向邊界值靠攏,而直接從邊界出發,直到求出函式值。
比如階乘函式:f(n)=n*f(n-1)在f(3)的運算過程中,遞迴的資料流動過程如下:
f(3)--f(2)--f(1)--f(0)--f(1)--f(2)--f(3)
3、兩種演算法用途不同。
遞迴演算法絕大多數程式語言支援函式的自呼叫,在這些語言中函式可以通過呼叫自身來進行遞迴。計算理論可以證明遞迴的作用可以完全取代迴圈,因此在很多函式程式語言(如scheme)中習慣用遞迴來實現迴圈。
12樓:匿名使用者
遞推就是從前往後推,遞迴還有個回溯的過程。
舉個例子,數列:1,1,2,3,5,8,13,21,……要求第100項,就得從前兩項開始推,直到第100項,是一個遞推的過程f[0]=f[1]=1;
for(i=2;i<101;i++)
如果已知:f(n)=f(n-1)+f(n-2),f(0)=f(1)=1;
求f(n)就可以寫一個函式:
int f(int n)
這個就是回溯,因為比較簡單,所以其實也可以用遞推來實現。
13樓:網友
遞推像是多米諾骨牌,根據前面幾個得到後面的;遞迴是大事化小,比如漢諾塔(hanoi)問題,典型的遞迴。
c語言用遞推和遞迴兩種演算法完成斐波那契數列的計算,給一下**
14樓:匿名使用者
||/遞迴copy法。
int fibo1(int n)
//遞推法。
int fibo2(int n)
{int f0=1,f1=1,f;
if (n<2)
return 1;
for(int i=2;i知的條件去推出未知的條件;遞迴則是將大問題逐漸轉化為若干個相同的子問題,直到得到已知的最小子問題,再回溯依次得到父問題的答案。是由未知到已知,再從已知到未知。對於複雜的問題,遞迴把問題簡單化,讀起來易懂。
15樓:匿名使用者
//遞迴,就是函式自己呼叫自己。
#include
int feibonaqie(int n)int main(void)
16樓:小花貓愛大蘿蔔
#include
#include
#include
void main()
//遞迴法。
int fib(int n)
//遞推法。
int fic (int n)
return f2;
}此段程式將遞迴法和遞推法計算斐波拉契函式的時間詳細計算出,可以比較兩個演算法的時間複雜性。顯然此處遞推比遞迴演算法要好得多。
遞推就是從前往後推,遞迴還有個回溯的過程,通過呼叫自身函式完成計算。
求如下遞推數列的通項公式,求如下遞推數列的通項公式
a2 3a1方 2 a3 3a2方 2 3 3a1方 2 方 2 3 9a1的4次方 12a1的2次方 4 2 27 a1的4次方 36 a1的2次方 14an 3的 n 1 的平方 1 次方 a1的 n 1 的平方次方 後面回一大堆 後面這答一大堆不會了 但我肯定第一項我寫對了。坐等高人吧,累死我...
寫出斐波拉契數列的遞推公式,並給出它的第10到14項
斐波拉契數列 f 1 f 2 1 遞推公式f n f n 1 f n 2 f 3 3 f 4 5,f 5 8,f 6 13,f 7 21,f 8 34,f 9 55 f 10 89,f 11 144,f 12 233,f 13 377,f 14 610 斐波拉契數列的通項公式之推導由an 2 an ...
設數列h0,h1hn滿足遞推關係h n h n 1 16h n 2 20h n 3 0,n3其中h0 0,h1 1,h
考察方程 x 3 x 2 16x 20 0 它的解是 x1 5 x2 x3 2 因此 h n c1 5 n c2 nc3 2 n 由初值條件可得 h 0 c1 c2 0 h 1 5c1 2c2 2c3 1 h 2 25c1 4c2 8c3 1 解得 c1 5 49 c2 5 49 c3 1 7 所以...