關(guān)于時(shí)間復(fù)雜度求解方法,時(shí)間復(fù)雜度(計(jì)算方法 如果計(jì)算 及其解釋)這個(gè)問題很多朋友還不知道,今天小六來為大家解答以上的問題,現(xiàn)在讓我們一起來看看吧!
1、時(shí)間復(fù)雜度 1. 算法復(fù)雜度分為 時(shí)間復(fù)雜度和空間復(fù)雜度。
2、 作用: 時(shí)間復(fù)雜度是度量算法執(zhí)行的時(shí)間長(zhǎng)短;而空間復(fù)雜度是度量算法所需存儲(chǔ)空間的大小。
3、 2. 一般情況下,算法的基本操作重復(fù)執(zhí)行的次數(shù)是模塊n的某一個(gè)函數(shù)f(n),因此,算法的時(shí)間復(fù)雜度記做:T(n)=O(f(n)) 分析:隨著模塊n的增大,算法執(zhí)行的時(shí)間的增長(zhǎng)率和f(n)的增長(zhǎng)率成正比,所以f(n)越小,算法的時(shí)間復(fù)雜度越低,算法的效率越高。
4、 3. 在計(jì)算時(shí)間復(fù)雜度的時(shí)候,先找出算法的基本操作,然后根據(jù)相應(yīng)的各語句確定它的執(zhí)行次數(shù),在找出T(n)的同數(shù)量級(jí)(它的同數(shù)量級(jí)有以下:1,Log2n ,n ,nLog2n ,n的平方,n的三次方,2的n次方,n?。页龊?,f(n)=該數(shù)量級(jí),若T(n)/f(n)求極限可得到一常數(shù)c,則時(shí)間復(fù)雜度T(n)=O(f(n)) 例:算法: for(i=1;i<=n;++i) { for(j=1;j<=n;++j) { c[ i ][ j ]=0; //該步驟屬于基本操作 執(zhí)行次數(shù):n的平方 次 for(k=1;k<=n;++k) c[ i ][ j ]+=a[ i ][ k ]*b[ k ][ j ]; //該步驟屬于基本操作 執(zhí)行次數(shù):n的三次方 次 } } 則有 T(n)= n的平方+n的三次方,根據(jù)上面空號(hào)里的同數(shù)量級(jí),我們可以確定 n的三次方 為T(n)的同數(shù)量級(jí) 則有f(n)= n的三次方,然后根據(jù)T(n)/f(n)求極限可得到常數(shù)c 則該算法的 時(shí)間復(fù)雜度:T(n)=O(n的三次方)。
本文分享完畢,希望對(duì)大家有所幫助。
標(biāo)簽:
免責(zé)聲明:本文由用戶上傳,如有侵權(quán)請(qǐng)聯(lián)系刪除!