帮我看看这几个函数的功能和时间复杂度是多少!!!!
这些都是数据结构的问题,对我来说难度实在太大了
不知道那位高手能帮我把这些函数的 功能和时间复杂度 算出来
0:
int prime(int n)
{
int i=1;
int x =(int)sqrt(n);
while(++i<=x)
if(n%i==0)break;
if(i>x) return 1;
else return 0;
}
1:
int sum1(int n)
{
int p=1,s=0;
for(int i=1;i<=n;i++)
{
p*=i;
s+=p;
}
return s;
}
2:
int sum2(int n)
{
int s=0;
for (int i=0;i<=n;i++)
{
int p=1;
for(int j=1;j<=i;j++)
p*=j;
s+=p;
}
return s;
}
3:
int fun(int n)
{
int i=1,s=1;
while(s<n)
s += ++i;
return i;
}
4:
void UseFile(ifstream &inp, int c[10])
{
for(int i=0;i<10;i++)
c[i]=0;
int x;
while(inp>>x)
{
i=x%10;
c[i]++;
}
}
5:
void mtable(int n)
{
for (int i=1;i<n;i++)
{
for (int j=i;j<n;j++)
cout<<i<<"*"<<j<<"="<<setw(2)<<i*j<<" ";
cout<<endl;
}
}
6:
void cmatrix(int a[M][N], int d)
{
for (int i=0;i<m;i++)
for (int j=0;j<N;j++)
a[i][j] *= d;
}
7:
void matrimult(int a[M][N],int b[N][L], int c[M][L])
{
int i,j,k;
for(i=0;i<M;i++)
for(j=0;j<L;j++)
c[i][j]=0;
for(i=0;i<M;i++)
for(j=0;j<L;j++)
for(k=0;k<N;k++)
c[i][j] += a[i][k]*b[k][j];
}