数据结构源码笔记(C语言):希尔插入排序
//实现希尔插入排序算法
#include<stdio.h>
#include<malloc.h>
#define MAXE 20typedef int KeyType;
typedef char InfoType;typedef struct
{KeyType key;InfoType data[10];
}RecType;void ShellSort(RecType r[],int n)//
{int i,j,d,k;RecType temp;d=n/2;while(d>0){for(i=d;i<n;i++){j=i-d;while(j>=0 && r[j].key>r[j+d].key){temp=r[j];r[j]=r[j+d]; r[j+d]=temp;j=j-d;}}printf(" d=%d: ",d);//for(k=0;k<n;k++)printf("%3d",r[k].key);printf("\n");d=d/2; //}
}int main()
{int i,k,n;KeyType a[]={9,8,7,6,5,4,3,2,1,0};RecType r[MAXE];n=sizeof(a)/4;for(i=0;i<n;i++) r[i].key=a[i];printf("\n");printf("初始关键词: ");for(k=0;k<n;k++)printf("%3d",r[k].key);printf("\n");ShellSort(r,n);printf(" 最后结果: ");for(k=0;k<n;k++)printf("%3d",r[k].key);printf("\n\n");return 0;
}
数据结构源码笔记(C语言描述)汇总:
数据结构源码笔记(C语言):英文单词按字典序排序的基数排序
数据结构源码笔记(C语言):直接插入排序
数据结构源码笔记(C语言):直接选择排序
数据结构源码笔记(C语言):置换-选择算法
数据结构源码笔记(C语言):Huffman树字符编码
数据结构源码笔记(C语言):Josephus问题之顺序表
数据结构源码笔记(C语言):Josephus问题之循环链接表
数据结构源码笔记(C语言):多项式合并
数据结构源码笔记(C语言):二叉树之叶子结点旋转销毁
数据结构源码笔记(C语言):哈夫曼树
数据结构源码笔记(C语言):集合的位向量表示
数据结构源码笔记(C语言):链接队列
数据结构源码笔记(C语言):链接栈
数据结构源码笔记(C语言):线性表的单链表示
数据结构源码笔记(C语言):线性表的顺序表示
数据结构源码笔记(C语言):栈的基本操作
数据结构源码笔记(C语言):中缀表达式
数据结构源码笔记(C语言):希尔插入排序
数据结构源码笔记(C语言):索引文件建立和查找
数据结构源码笔记(C语言):冒泡排序
数据结构源码笔记(C语言):快速排序
数据结构源码笔记(C语言):可变长度字符串的快速排序
数据结构源码笔记(C语言):基数排序
数据结构源码笔记(C语言):二路归并排序
数据结构源码笔记(C语言):堆排序
数据结构源码笔记(C语言):二叉树搜索树Kruskal
数据结构源码笔记(C语言):二叉搜索树Prim
数据结构源码笔记(C语言):最短路径弗洛伊德算法
数据结构源码笔记(C语言):深度、广度优先生成树
数据结构源码笔记(C语言):邻接矩阵转化邻接表
数据结构源码笔记(C语言):统计字符串中出现的字符及其次数
数据结构源码笔记(C语言):顺序查找
数据结构源码笔记(C语言):哈希表的相关运算算法
数据结构源码笔记(C语言):分块法查找
数据结构源码笔记(C语言):二分查找
数据结构源码笔记(C语言):二叉树遍历
数据结构源码笔记(C语言):二叉平衡树的相关操作算法
数据结构源码笔记(C语言):二叉排序树的基本操作算法
数据结构源码笔记(C语言):B树的相关运算算法
数据结构源码笔记(C语言):希尔插入排序相关推荐
- 数据结构源码笔记(C语言):直接插入排序
//实现直接插入排序算法#include<stdio.h> #include<malloc.h> #define MAXE 20typedef int KeyType; typ ...
- 数据结构源码笔记(C语言描述)汇总
数据结构源码笔记(C语言):英文单词按字典序排序的基数排序 数据结构源码笔记(C语言):直接插入排序 数据结构源码笔记(C语言):直接选择排序 数据结构源码笔记(C语言):置换-选择算法 数据结构源码 ...
- 数据结构源码笔记(C语言):英文单词按字典序排序的基数排序
//实现英文单词按字典序排序的基数排序算法#include<stdio.h> #include<malloc.h> #include<string.h>#defin ...
- 数据结构源码笔记(C语言):索引文件建立和查找
//实现索引文件建立和查找算法#include<stdio.h> #include<malloc.h> #include<string.h> #include< ...
- 数据结构源码笔记(C语言):快速排序
//实现快速排序算法 #include<stdio.h> #include<malloc.h> #define MAXE 20typedef int KeyType; type ...
- 数据结构源码笔记(C语言):冒泡排序
//冒泡排序算法实现 #include<stdio.h> #include<malloc.h> #define MAXE 20typedef int KeyType; type ...
- 数据结构源码笔记(C语言):直接选择排序
//实现直接选择排序算法#include<stdio.h> #include<malloc.h> #define MAXE 20typedef int KeyType; typ ...
- 数据结构源码笔记(C语言):置换-选择算法
//实现置换-选择算法#include<stdio.h> #include<malloc.h> #include<string.h> #include<std ...
- 数据结构源码笔记(C语言):Huffman树字符编码
#include <stdio.h> #include<string.h> #define N 10 /*待编码字符的个数,即树中叶结点的最大个数*/ #define M 2* ...
最新文章
- Linux虚拟机和Window本地共享文件夹用于PHP项目调试
- 用友二次开发——工资导入
- redisCommand接口的用法--利用hiredis库获取MGET命令的结果的坑!
- 高级转录组分析和R语言数据可视化第12期 (线上线下同时开课)
- 三相四线怎样查漏电_制冷机组三相四线与三相五线有什么区别?
- 最新黑链代码expression:隐藏链接代码
- MongoDB的简单操作
- MAC电脑数据迁移方法
- 2012 Java陷阱
- Some about me
- VS2015中快捷注释代码块
- 【Git、GitHub、GitLab】九 工作中非常重要的一些git用法
- 一串字符串转换为ascii_将ASCII字符串(char [])转换为C中的BYTE数组
- 基础算法 —— 递推算法
- Linux——vi编辑器
- 使用C#和MSMQ开发消息处理程序
- 电脑版永恒纪元服务器正在维护,永恒纪元————【维护】1月10日更新维护公告...
- 《Java性能优化权威指南》读书笔记
- 笔记本电脑扩展屏幕到笔记本、平板和手机(duet、spacedesk)
- chrome拓展 --截屏文字识别
热门文章
- python walk_Python os.walk()方法
- 数组 字符串的解构赋值 以及const命令
- 网工学Python——初识面向对象
- BZOJ3230 相似子串 字符串 SA ST表
- HTML5API(5)
- Xcode9新特性介绍-中文篇
- c# 添加图片水印,可以指定水印位置+生成缩略图[付上帅图1,2,3,4]
- linux和android调试概要
- /dev、/sys/dev 和/sys/devices 和udev的关系
- Wince程序内存和存储内存