直接插入排序 .
来源:互联网 发布:h5单页商品详情源码 编辑:程序博客网 时间:2024/06/09 14:49
#include <stdio.h>#define MaxSize 20typedef int KeyType; //定义关键字类型typedef char InfoType[10];typedef struct //记录类型{ KeyType key; //关键字项 InfoType data; //其他数据项,类型为InfoType} RecType; //排序的记录类型定义void InsertSort(RecType R[],int n) //对R[0..n-1]按递增有序进行直接插入排序{ int i,j; RecType tmp; for (i=1; i<n; i++) { tmp=R[i]; j=i-1; //从右向左在有序区R[0..i-1]中找R[i]的插入位置 while (j>=0 && tmp.key<R[j].key) { R[j+1]=R[j]; //将关键字大于R[i].key的记录后移 j--; } R[j+1]=tmp; //在j+1处插入R[i] }}int main(){ int i,n=10; RecType R[MaxSize]; KeyType a[]= {9,8,7,6,5,4,3,2,1,0}; for (i=0; i<n; i++) R[i].key=a[i]; printf("排序前:"); for (i=0; i<n; i++) printf("%d ",R[i].key); printf("\n"); InsertSort(R,n); printf("排序后:"); for (i=0; i<n; i++) printf("%d ",R[i].key); printf("\n"); return 0;}
运行结果:
0 0
- 插入排序--直接插入
- 插入排序------直接插入
- 插入排序---直接插入
- 排序:直接插入排序
- 排序---直接插入排序
- 排序 -- 直接插入排序
- 排序---直接插入排序
- 排序--直接插入排序
- 排序-直接插入排序
- 【排序】直接插入排序
- 排序--直接插入排序
- 排序:直接插入排序
- 【排序】直接插入排序
- 排序--直接插入排序
- 排序--直接插入排序
- 排序-直接插入排序
- 插入排序--直接插入排序
- 插入排序-直接插入排序
- java笔记-构造函数
- 第15周、项目2.1—用哈希法组织关键字
- PHP7变量在内核中存储方式
- 第十周项目一:二叉树算法库
- 结构化风险最小、VC维到SVM的理解
- 直接插入排序 .
- 第十五周 项目一 验证算法
- 第十五周-哈希表及其运算的实现
- ActiveMQ入门实例
- 数据结构实践——Kruskal算法的验证
- 一些shader 代码
- spring同时集成遇到多个properties资源文件加载的问题
- 第4周项目2建立单链表表算法库
- Node.js NPM 包管理器