题解 | #有序序列插入一个整数#
有序序列插入一个整数
https://www.nowcoder.com/practice/444e87f938464906a1649cff236b102b
#include<stdio.h>
#include<string.h>
int main()
{
int n,m,i,j,t;
int a[51] = { 0 };
scanf("%d", &n);
for (i = 0;i <= n-1;i++)
{
scanf("%d", &a[i]);
}
scanf("%d", &m);
if (m > a[n - 1])
{
a[n] = m;
}
if (m < a[0])
{
memcpy(&a[1], &a[0], 4 * n);
a[0] = m;
}
for (j = 0;j <= n - 1;j++)
{
if (m < a[j + 1] && m>a[j])
{
memcpy(&a[j + 2], &a[j + 1], 4 * (n - j - 1));
a[j + 1] = m;
}
}
for (j = 0;j <= n;j++)
{
printf("%d ", a[j]);
}
return 0;
}
查看19道真题和解析