您的位置:首页 > 其它

最大间隙问题。给定 n 个实数,求这n个实数在数轴上相邻2个数之间的最大差值,设计解最大间隙问题的线性时间算法。

2016-09-07 19:23 274 查看
#include <stdio.h>
#include <math.h>
int main(){
float a[50];
float b[50];
float c,d;
int num,i,j;
printf("输入实数个数\n");
scanf("%d",&num );
printf("输入实数:\n");
for(i=0;i<num;i++){
scanf("%f",&a[i]);
}
for(i=0;i<num;i++)
for(j=0;j<num-i-1;j++){
if(a[j]<a[j+1]){
float c=a[j];
a[j]=a[j+1];
a[j+1]=c;
}
}
for(j=0;j<num-1;j++){
b[j]=a[j]-a[j+1];
}
for(i=0;i<num-1;i++)
for(j=0;j<num-i-2;j++){
if(b[j]>b[j+1]){
d=b[j];
b[j]=b[j+1];
b[j+1]=d;
}
}
printf("%0.1f",b[num-2]);
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐