演算法分析__遞迴跟蹤

Enjoy_process發表於2019-03-05

                                                演算法分析__遞迴跟蹤

 

 

一、定義

檢查每個遞迴例項,累計所需時間(呼叫語句本身,計入對應的子例項),其總和即演算法執行時間。

 

二、程式分析

 

最基本:線性遞迴

問題描述:給出一個長度為n的整數陣列,統計陣列各元素的和。

解題程式碼:

int sum(int A[],int n)
{
	return (n<1)?0:sum(A,n-1)+A[n-1];
}

本例中,共有n+1個遞迴例項,每個遞迴例項只需O(1)時間,因此 T(n)=O(1)*(n+1)=O(n)

 

三、特點

直觀形象,僅適用於簡明的遞迴模式。

相關文章