求整數n n0 階乘的演算法如下,其時間複雜度

時間 2021-08-11 18:17:31

1樓:匿名使用者

#include

int main(void)

int i,s=1;

printf("please input a intdata:");

scanf("%d",&i);

for(;i>1;i--)

s*=i;

printf("%d\n",s);

return 0;

這是一個遞迴程,可以看出每遞迴一次n的規模小一,所是結果是線性的。

1、階乘指從1乘以2乘以3乘以4一直乘到所要求的數。例如所要求的數是4,則階乘式是1×2×3×4,得到的積是24,24就是4的階乘。 例如所要求的數是6,則階乘式是1×2×3×……×6,得到的積是720,720就是6的階乘。

例如所要求的數是n,則階乘式是1×2×3×……×n,設得到的積是x,x就是n的階乘。任何大於1的自然數n階乘表示方法: n!

=1×2×3×……×n  或 n!=n×(n-1)!   5!

=5*4*3*2*1=120。

2、所要求的數是4,則階乘式是1×2×3×4,得到的積是24,24就是4的階乘。 例如所要求的數是6,則階乘式是1×2×3×……×6,得到的積是720,720就是6的階乘。例如所要求的數是n,則階乘式是1×2×3×……×n,設得到的積是x,x就是n的階乘。

在表達階乘時,就使用“!”來表示。如n階乘,就表示為n!

2樓:

b這是一個遞迴程,可以看出每遞迴一次n的規模小一,所是結果是線性的。

求該階乘演算法的時間複雜度:int factorial(int n)if(n==0) return 1;else return n * factorial(n-1);

3樓:聽不清啊

該階乘演算法的時間複雜度為o(n)

4樓:匿名使用者

#include"stdio.h"intprime(intn)intmain()

求n!的時間複雜度(只計算一下下面程式的就好)

5樓:聽不清啊

這時間複雜來度就是o(n)。自

這只是用來初學遞迴時用來幫

bai助理解用的。一du般使用時,zhi能用迴圈解決的dao就不用遞迴。

只要用一個迴圈就可以了的。

long fun(int n)

請說明下列演算法的時間複雜度。

6樓:匿名使用者

第一個是 o(8*n) 去常數項就是 o(n)

第二個是 o(m*n)

x+=2和x++ 的複雜度是一樣的 都是o(1) 這也是為什麼在高版精度之類的演算法裡 用四權位、八位分割後 可以提高速度的原因

7樓:匿名使用者

(1)o(n)。外層for迴圈

o(n);內層for迴圈o(1),因為是常數個迴圈;x+=2為o(1)。則總的時間複雜度為o(n)。

(2)o(n^2)。外專層for迴圈o(n);內層屬for迴圈o(n);兩者都是線性時間複雜度。x++為o(1)。則總的時間複雜度為o(n^2)。

8樓:匿名使用者

(1) void sf1 (int n)f(n)=1+n+1+(n+1)*8+(n+1)*8f(n)=2+n+16*(n+1)

f(n)=18+17n

t(n)=o(f(n))=o(18+17n)=o(n)(2) void sf2 (int n, int m){ for (i=0; i,

答t(n)=o(f(n))=o(n+2n²)=o(n²)

演算法的時間複雜度o(n)到底怎麼算

9樓:匿名使用者

看迴圈bai

或者遞迴的層du數。

zhi比如該函

dao數為版o(n)權

int f(int x,int y)

{int i,j;

for(i=0;i

而該函式為o(n2)

int f(int x,int y)

{int i,j;

for(i=0;i

112345nn是正整數,1)1 2 3 4 5 n n是正整數 2)1 3 5 7 11 201 3)2

1 s 1 2 n 1 s n n 1 1 2 1 2 2s 1 n 2 n 1 n 1 n 1 n 1 n 1 n n 1 s n n 1 2 1 2 n s n n 1 2 2 s 1 3 5 201 1 s 201 199 1 2 1 2 2s 1 201 3 199 201 1 202 20...

字元0和整數0有區別麼求高手 求詳解

八哥說科技 1 型別符號不同 字元 0 用字元變數儲存,需要使用型別符號 char 來表示,而整數0用整型變數來儲存時,使用 int 型別符號來申明。2 儲存單元不同 字元 0 在記憶體單元中佔用 1 個位元組即8位來表示,而整型變數儲存 0 在16位字長的機器上,基本整型的長度也為16位,即用 2...

0屬於整數嗎?0是整數嗎?

0是整數。整數分為三大類 1 正整數,即大於0的整數如,1,2,3 直到n 既不是正整數,也不是負整數,它是介於正整數和負整數的數 3 負整數,即小於0的整數如,1,2,3 直到 n。注 現中學數學教材中規定 零和正整數為自然數。整數是正整數 零 負整數的集合。像 2,1,0,1,2這樣的數稱為整數...