栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C语言

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C语言

(只是一个数组题目罢了)

直接插入排序,是指将无序序列中的各元素依次插入到已经有序的数组中。

假设数组中前i-1元素已经有序,现在要将线性表中第i个元素插入到前面的有序子表中,插入过程如下:

以长度为n=8的序列(13,6,1,31,9,27,5,11)的插入排序过程做示范: 第1趟:将数组第2个元素6向前插入后,则数组中元素为(6,13,1,31,9,27,5,11); 第2趟:将数组第3个元素1向前插入后,则数组中元素为(1,6,13,31,9,27,5,11); 第3趟:将数组第4个元素31向前插入后,则数组中元素为(1,6,13,31,9,27,5,11); …… 第7趟:将数组第8个元素11向前插入后,则数组中元素为(1,5,6,9,11,13,27,31); 总之,共执行7趟操作,可将有n=8个元素的数组排成有序序列。

插入排序从第二个数开始,拿出第二个数向前进行插入排序,一直到最后一个数向前做插入排序,要求输出每趟插入排序的结果。

测试输入:

10

47 47 21 69 2 8 76 50 9 47

预期输出:

47 47 21 69 2 8 76 50 9 47

21 47 47 69 2 8 76 50 9 47

21 47 47 69 2 8 76 50 9 47

2 21 47 47 69 8 76 50 9 47

2 8 21 47 47 69 76 50 9 47

2 8 21 47 47 69 76 50 9 47

2 8 21 47 47 50 69 76 9 47

2 8 9 21 47 47 50 69 76 47

2 8 9 21 47 47 47 50 69 76

提示: 如果有10个整数,要求输出每趟插入排序共9趟的结果。

这里我调用了自定义函数来实现程序,真正编写时可以不用函数。具体怎么做,就请读者自己思考啦。

编写程序:

#include
#define N 100
int ONE (int a[],int n)
{
	int i,m;
	for (m=2;m=1;i--)
		{
			if (a[0]

运行结果:


 运行成功!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/528877.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号