C语言实现插入排序
  6DMaaPzJglxt 2023年12月05日 25 0


对插入排序的理解

给一堆无序数(n个数据)进行插入排序步骤:
第1个元素进行排序,插入第2个元素;
前2个进行排序,插入第3个元素;
前3个元素进行排序,插入第3个元素;
……
前n个数据进行排序,完成排序
注意:插入元素到有序的序列中比较排序哦

OK,很简单!

接下来写一个数组的插入排序

void insertsort(int R[],int n)
{
	int i,j,temp;
	for(i=1;i<n;++i)
	{
		temp=R[i];
		j=i-1;
		while(j>=0&&temp<R[j])
		{
			R[j+1]=R[j];//不断更新该数组出前j个最小的数
			--j;
		}
		R[j+1]=temp;//找到插入位置,将最小的数放在最前面
	}
}

下面是主函数

int main()
{
	
	printf("插入排序算法\n输入8个数据进行排序:\n");
	int R[8];
	for(int i=0;i<=7;i++)
	{
		scanf("%d",&R[i]);
	}
	insertsort(R,8);
	printf("\n小大排序之后的顺序:");
	for(i=0;i<=7;i++)
	{
		printf("%d  ",R[i]);
	}
	printf("\n");
	return 1;
}

运行结果

C语言实现插入排序_插入排序


C语言实现插入排序_数组_02


ok没问题!


【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年12月05日 0

暂无评论

推荐阅读
  xaeiTka4h8LY   2024年04月26日   36   0   0 split数组字符串
6DMaaPzJglxt