有一个有序数组,要求将一个新输入的数插入到数组中并保证插入新数后,数组仍有序。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了有一个有序数组,要求将一个新输入的数插入到数组中并保证插入新数后,数组仍有序。相关的知识,希望对你有一定的参考价值。

有一个有序数组,要求将一个新输入的数插入到数组中并保证插入新数后,数组仍有序。


因为数组在初始条件下是有序的,而题目要求插入新数后数组仍有序。因此,首先应该在数组中找到插入位置,然后将该位置原有的数以及该位置后面的数都依次后移一个位置,为新插入的数值空出一个位置。

#include<stdio.h>

int main()

{

int a[11] = {2, 4, 8, 15, 20, 36, 49, 51, 78, 96};

int temp1, temp2, number, end, i, j;

printf("The original arry is:\n");

for(i = 0; i < 10; i++)

printf("%5d", a[i]);

printf("\n");

printf("Please insert a new number:");

scanf("%d", number);

end = a[9];

 if(number > end)

 a[10] = number;

 else

 {

 for(i = 0; i < 10; i++)

 {

 if(a[i] > number)

 {

 temp1 = a[i];

 a[i] = number;

 for(j=i+1; j<11; j++)

 {

 temp2 = a[j];

 a[j] = temp1;

 temp1 = temp2;

 }

 break;

 }

 }

 }

 for(i=0; i<11; i++)

 printf("%6d", a[i]);

 printf("\n");

}


以上是关于有一个有序数组,要求将一个新输入的数插入到数组中并保证插入新数后,数组仍有序。的主要内容,如果未能解决你的问题,请参考以下文章

将一个任意整数插入到已排列的整型数组中,插入后,数组中的数仍保持有序

问题 A: 习题6-4 有序插入

python进阶练习之——有序列表插入元素❤️

几种常用排序整理

插入排序

插入排序