解题思路:
注意事项:
参考代码:
#include<stdio.h>
int main()
{
int a[10000];
int m,n,i,j,b;
int high,low;
scanf("%d",&m);
for(i=0;i<m;i++)
{
scanf("%d",&a[i]);
}
for(i=1;i<m;i++)
{
high=i-1;
low=0;
n=a[i];
while(low<=high)
{
b=(low+high)/2;
if(a[b]>n) high=b-1;
else low=b+1;
}
for(j=i-1;j>=high+1;j--)
{
a[j+1]=a[j];
}
a[high+1]=n;
}
for(i=0;i<m;i++)
{
printf("%d ",a[i]);
}
return 0;
}
0.0分
1 人评分
点我有惊喜!你懂得!浏览:1336 |
C语言程序设计教程(第三版)课后习题5.8 (C语言代码)浏览:928 |
Tom数 (C++代码)浏览:826 |
字符串输入输出函数 (C++代码)(都当成字符串吧hhhhhhhh)浏览:493 |
输出正反三角形 (C语言代码)格式错误!!!浏览:1140 |
C语言程序设计教程(第三版)课后习题6.2 (C语言代码)浏览:1419 |
C语言程序设计教程(第三版)课后习题6.8 (C语言代码)浏览:763 |
2006年春浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:640 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:468 |
蛇行矩阵 (C语言代码)浏览:498 |