卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

空間復(fù)雜度舉例 如何計(jì)算一個(gè)算法的時(shí)間復(fù)雜度和空間復(fù)雜度?

如何計(jì)算一個(gè)算法的時(shí)間復(fù)雜度和空間復(fù)雜度?它是根據(jù)一個(gè)程序的數(shù)據(jù)n的大小來(lái)顯示它所使用的時(shí)間和空間的近似值說(shuō)白了,它是顯示時(shí)間或空間是如何隨著n的增長(zhǎng)而增長(zhǎng)的例如for(int i=0 i這個(gè)循環(huán)執(zhí)行

如何計(jì)算一個(gè)算法的時(shí)間復(fù)雜度和空間復(fù)雜度?

它是根據(jù)一個(gè)程序的數(shù)據(jù)n的大小來(lái)顯示它所使用的時(shí)間和空間的近似值

說(shuō)白了,它是顯示時(shí)間或空間是如何隨著n的增長(zhǎng)而增長(zhǎng)的

例如

for(int i=0 i

這個(gè)循環(huán)執(zhí)行了n次,所以時(shí)間復(fù)雜度是O(n)

for(int i=0 i

{

for(int j)=0j

}]這個(gè)嵌套的兩個(gè)循環(huán),時(shí)間復(fù)雜度是O(n^2)

時(shí)間復(fù)雜度只能粗略地表示所用的時(shí)間

而且一些基本步驟的運(yùn)行時(shí)間是不同的,所以我們無(wú)法計(jì)算,所以我們省略了

例如

for(int i=0I

a=b

and

for(int i=0I

運(yùn)行時(shí)間當(dāng)然是第二快的,但是它們的時(shí)間復(fù)雜度是相同的O(n)

判斷時(shí)間復(fù)雜度,看循環(huán)

時(shí)間復(fù)雜度是程序的運(yùn)行時(shí)間,這也可以說(shuō)是次數(shù);

空間復(fù)雜度是程序所占用的空間;

以下程序:

int a[1000000

]int CNT=0

for(int i=0 i

for(int j=0 j

a[CNT]=0

空間主要是一個(gè)大小為1000000的數(shù)組a;時(shí)間復(fù)雜度是兩個(gè)for循環(huán)。第一個(gè)循環(huán)要做一次,第二個(gè)循環(huán)要做1000次,第一個(gè)循環(huán)要做1000次,一共1000×1000次

如果兩個(gè)循環(huán)分別對(duì)應(yīng)m和N次,那么要做的次數(shù)就是m*N

你能聽(tīng)懂前兩句話嗎?

什么叫時(shí)間復(fù)雜度和空間復(fù)雜度?

當(dāng)計(jì)算機(jī)完成任務(wù)時(shí),它有兩個(gè)指示器:時(shí)間和所有內(nèi)存(即空間)。兩者呈負(fù)相關(guān)。也就是說(shuō),在設(shè)計(jì)特定的程序時(shí),可以選擇使用更多的內(nèi)存,這樣可以提高程序的速度,也就是減少程序的運(yùn)行時(shí)間。另一方面,也可以選擇使用較少的內(nèi)存,這樣可以節(jié)省內(nèi)存,但同時(shí),程序運(yùn)行速度會(huì)變慢,這意味著程序運(yùn)行時(shí)間會(huì)更長(zhǎng)??傊?,該算法只有兩種策略,一種是以時(shí)間換空間,另一種是以空間換時(shí)間。直接答案是高空間復(fù)雜度和低時(shí)間復(fù)雜度的算法,反之亦然。