Shell Sort(希尔排序)
来源:互联网 发布:大数据经典案例 编辑:程序博客网 时间:2024/06/06 11:25
#include <stdio.h>
#include <stdlib.h>
#define maxsize 10
typedef struct{
int a[maxsize+1];
int length;
}sqlist;
void shellsort(sqlist*l){
int i,j;
int increment=l->length;
do{
increment=increment/3+1;
for(i=increment+1;i<=l->length;i++){
if(l->a[i]<l->a[i-increment]){
l->a[0]=l->a[i];
for(j=i-increment;j>0 && l->a[j]>l->a[0];j -= increment)
{
l->a[j+increment]=l->a[j];//红色字体作用是交换a[i]和a[i-increment]的值
}
l->a[j+increment]=l->a[0];
}
}
}
while(increment>1); //(当increment<=1时结束循环)
}
int main(){
int i;
sqlist *l;
l=(sqlist*)malloc(sizeof(sqlist));
scanf("%d",&l->length);
for(i=1;i<=l->length;i++){
scanf("%d",&l->a[i]);
}
shellsort(l);
for(i=1;i<=l->length;i++){
printf("%d\n",l->a[i]);
}
return 0;
}
- Shell Sort 希尔排序
- 希尔排序(Shell Sort)
- 希尔排序(Shell Sort)
- 希尔排序(Shell Sort)
- 希尔排序(Shell Sort)
- 希尔排序/shell sort
- 希尔排序(Shell Sort)
- 希尔排序 shell sort
- 希尔排序Shell Sort
- 希尔排序(shell sort)
- 希尔排序Shell sort
- 希尔排序 shell sort
- 希尔排序Shell sort
- 希尔排序shell sort
- Shell Sort 希尔排序
- 希尔排序 shell sort
- 希尔排序(Shell Sort)
- Shell Sort(希尔排序)
- HDU 2031
- Servlet的一些总结
- GCD延时操作Dispatch_after swift写法
- ajax跨域调用(实例)
- Go语言 实现简单的 Set
- Shell Sort(希尔排序)
- java jxl 导出数据 合并单元格
- HEXIWEAR---SDK架构
- JAVA反射系列之Method,java.lang.reflect.Method的使用
- python之定义类并创建实例
- QML中,图片路径的问题
- CSAPP第八章:读书笔记
- CSS3 基础(014_媒体查询)
- Android 特效库 - Material 风格的概念设计