c语言按字母排序用直接插入法,直接插入排序(C语言实现)
直接插入排序(C语言实现)
直接插入排序方法:仅有一个记录的表总是有序的,因此,对于有n个记录的表,可以从第二个记录开始直到第n个记录逐个有序的向有序表中进行插入操作,从而得到n个记录按关键字有序的表。下面一起跟着小编学习一下吧!
实现一个直接插入排序的`C语言函数,要求对要排序的元素按照逐渐递增有序。这个函数的具体实现如下:
/* 直接插入排序函数的实现
* array[] : 待排序的数组
* length : 待排序的数组的大小
*/
void ion_sort(int array[], int length)
{
int i, j;
int temp; // 用来存放临时的变量
for(i = 1; i < length; i++)
{
temp = array[i];
for(j = i-1; (j >= 0)&&(array[j] > temp); j--)
{
array[j + 1] = array[j];
}
array[j + 1] = temp;
}
}
编写测试代码如下所示:
/* 程序的入口函数 */
int main()
{
int a[ARRAY_LENGTH];
int i;
int d[3] = {5, 3, 1}; // 定义一个表示增量值的数组
/* 输入10个整形元素 */
printf("Input %d numbers :
", ARRAY_LENGTH);
for(i = 0; i < ARRAY_LENGTH; i++)
{
scanf("%d", &a[i]);
}
printf("****************************************************************
");
/* 把排序前元素都打印出来 */
printf("The elements before sort is :
");
for(i = 0; i< ARRAY_LENGTH; i++)
{
printf("%d ", a[i]);
}
printf("
");
printf("****************************************************************
");
/* 对元素进行有小到大的直接插入排序 */
ion_sort(a, ARRAY_LENGTH);
/* 把排序后元素都打印出来 */
printf("The elements after sort is :
");
for(i = 0; i < ARRAY_LENGTH; i++)
{
printf("%d ", a[i]);
}
printf("
");
return 0;
}
编译并运行结果如下所示:
c语言按字母排序用直接插入法,直接插入排序(C语言实现)相关推荐
- Algorithm:C++语言实现之内排序、外排序相关算法(插入排序 、锦标赛排序、归并排序)
Algorithm:C++语言实现之内排序.外排序相关算法(插入排序 .锦标赛排序.归并排序) 目录 一.内排序 1.插入排序 2.锦标赛排序 3.归并排序 二.外排序 1.过程 一.内排序 1.插入 ...
- c语言冒泡排序字母排序,排序与查找之冒泡排序篇(C语言实现)
在进行冒泡排序C语言实现之前,先介绍冒泡排序,只有真正理解了冒泡排序的算法,才能从本质上理解C语言的实现过程 冒泡排序原理: 冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法 ...
- c语言 冒泡排序算法,排序算法_冒泡排序改进(c语言实现)
下面是未经改进的冒泡排序算法: #include #include int a[10] = {1,4,3,5,23,2,45,6,3,5}; main() { int i,j,mid; int len ...
- c语言中英文字母要怎么定义,【资料】c语言中常用英语
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 运算符与表达式: 5. `parameter 参数 2 条件语句 1.constant 常量 6.static 静态的 condition 2. vari ...
- c语言中字母大写转小写,C语言中字母大小写转换的简单操作
大写字母要转换小写字母,要怎么操作呢?而在C语言开发中,我们经常会遇到这样或者那样的问题,别着急,爱站技术频道为你细细道来C语言中字母大小写转换的简单操作. C语言tolower()函数:将大写字母转 ...
- c语言通讯录按字母排序,c语言程序设计通讯录.docx
长江大学工程技术学院C语言课程设计实习报告 通讯录管理系统 学生姓名:吴正杰学 号:201461031 序 号:19 专业班级:计科61031 指导老师:刘旨阳 报告日期:2015\7\6 需求分析 ...
- 根据首字母排序英文名c语言,英文名按首字母排序的问题
2015-01-25 回答 nba截止2014-15赛季存在的球队英文名字按照首字母排序如下: atlanta hawks atl(亚特兰大老鹰) boston celtics cel(波士顿凯尔特人 ...
- c语言排序算法 应用与实现,基于C语言排序算法改进与应用.doc
基于C语言排序算法改进与应用 基于C语言排序算法改进与应用 摘 要:介绍了程序语言中排序的原理及应用,阐述了基于C语言的三种主要排序方法,提出了每种排序方法的改进,计算出改进后算法的时间复杂度,编写了 ...
- Java 按照拼音首字母排序
默认的 Collection.sort() 是按照 ASCII 码排序, 不过, 有第二个重载方法, 第二个参数可以传入 Comparator 对象 java.text.Collator 可以用于本地 ...
最新文章
- android中menu菜单扩增_【已解决】Android添加Menu菜单
- mysql 查询rowno_C# Mysql 查询 Rownum的解决方法
- Linux终端关闭屏幕显示,使用命令行关闭监视器
- 亡羊补课2019-12-19
- python 字符串处理 字典_python 字符串和字典
- 宏锦软件2015年的计划
- python3入门经典100例-ZH奶酪:编程语言入门经典100例【Python版】
- 基于Java毕业设计智能旅游电子票务系统演示录像2020源码+系统+mysql+lw文档+部署软件
- php datedif,Excel Datedif函数全面解析及BUG分析
- 什么是SMART原则?SMART原则是什么意思?
- UVALive 6657
- 六安职院美和易思互联网+特色专业举行第一届HTML网页设计大赛
- Windows 去除我的电脑页面多余的设备和驱动器图标
- 井冈山大学专属中秋月饼
- 让lynda网站显示中文字幕
- WMS 系统和 ERP 系统的区别是什么?
- er图 navicat_Navicat 怎么生成ER图表
- 音频提取以及人声处理
- 上海交通大学计算机考研信息汇总
- 算法竞赛进阶指南 0x53 区间DP