有序数组插入数据改进:
13,20,32,36,45,57,68,79,89,92,
x: 35
方法:
(1)从后往前找位置(发现当前数据比x大,该数据后移一个位置,否则查找位置结束)
(2)把x插入到指定位置
#include <stdio.h>
int main()
{
int a[11]={13,20,32,36,45,57,68,79,89,92};
int i,x,j;
scanf("%d",&x);
//找位置并空出位置
for(i=9;i>=0;i--)
if (a[i]>x) a[i+1]=a[i];
else break;
//把x插入到i+1位置
a[i+1]=x;
//输出数组内容
for(i=0;i<11;i++)
printf("%d ",a[i]);
printf("\n");
return 0;
}
上一页
[1]
[2]
[3]
[4]
[5]