概述
算法思想:
从头开始遍历找到第一个大于element的数,然后插入数字,后面的元素依次移动。
实例代码:
#include<stdio.h>//直接插入排序
void insert_array(int *a,int length,int element)//插入函数 往有序的数组a里插入值为element的元素使数组a依然有序
{
int i,j,t,f;
for(i=0;i<length;i++)
{
if(a[i]>element)
{
t=i;//找到位置以后 可以依次移动数组元素腾出位置了
for(j=length;j>=t;j--)
{
if(j==t)
a[j]=element;
else
a[j]=a[j-1];//数组依次往后移动 不管正序还是倒序都可以
}
f=1;
break;
}
}
if(f!=1)//当element大于所有数组元素时候
{
a[length]=element;
}
for(i=0;i<length+1;i++)
{
printf("%d ",a[i]);
}
}
int main()
{
int a[5]={1,2,3,5,6};
int e=7;
insert_array(a,5,e);
}
登录后复制
推荐教程:c语言教程
以上就是c语言实现向有序数组中插入一个数并保持有序的详细内容,更多请关注靠谱客其它相关文章!
最后
以上就是顺利水杯为你收集整理的c语言实现向有序数组中插入一个数并保持有序的全部内容,希望文章能够帮你解决c语言实现向有序数组中插入一个数并保持有序所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复