求数据结构 中 @语句的频度 三道题

2024-11-30 12:49:44
推荐回答(1个)
回答1:

t;d4(线形关系)

2.语句的频度就是该语句执行的次数:
(1)执行了n-1次,即用线性阶表示就是o(n)
(2)执行了n-1次, 即用线性阶表示就是o(n)
(3)执行了n-1次,即用线性阶表示就是o(n)
(4)执行了(n+1)*n/2次, 用平方阶表示就是o (n*n)

3.我是用的快速排序,也有其它的方法
#include
void getMax(int a,int b,int c){
int m;
if (a m=b;b=a;a=m;
}
if (a m=c;c=a;a=m;
}
if (b m=c;c=b;b=m;
}
printf("%d%d%d",a,b,c);
}
void main(){
int a;
int b;
int c;
printf("please input a,b,c");
scanf("%d%d%d",&a,&b,&c);
getMax(a,b,c);
}

4.#include
int importw(){
int n;
int i;
int maxint=1000000000;
long max=1;
printf("请输入正整数n:\n");
scanf("%d",&n);
if (n<=0){
n=importw();
}
else if (n>20){
printf("输入的n大于存储长度,请您输入n小于20");
n=importw();
}
else{
if (n==1){
max=2;
}
else{
for (i=1;i<=n;i++){
max=max*i;
}
max=max*2;
if (max>maxint||max<0){
printf("您输入的n值过大,请重新输入\n");
n=importw();
}
}
}

return n;
}//得到正确的n值

void accountw(){
int n;
n=importw();
int a[20];
int i;
int j;
if (n==1){
a[0]=2;
printf("值列表为:\n");
printf("%d",a[0]);
}
else {
a[0]=2;
for (i=1;i int amass;
amass=amass*i;
a[i]=amass*2;
}
printf("结果列表:\n");
for (j=1;j printf("%d\n",a[j]);
}
}
}//计算阶乘的值

void main(){
accountw();
}