每天一个小算法(Shell Sort3)
来源:互联网 发布:linux 终端关闭全屏 编辑:程序博客网 时间:2024/05/22 09:46
希尔算法自己编了一个,循环很多,很不美观,不过运行正确:
c语言实现:
#include <stdio.h>#include <stdlib.h>#define LEN 20 int main(){int d,i,j,k;int arr[]={20,19,16,17,11,12,13,18,14,15,10,9,8,7,6,5,4,3,2,1};int key;for(d=LEN/2;d>0;d--)for(i=0;i<d;i++)for(j=i+d;j<LEN;j=j+d){k=j;key=arr[j];while(k>0 && arr[k-d]>key){arr[k]=arr[k-d];k=k-d;}arr[k]=key;}for(i=0;i<LEN;i++)printf("%d\n",arr[i]);}
运行结果:
明天任务:
好好思考希尔排序的实现;想一想如何优化比较好。
0 0
- 每天一个小算法(Shell Sort3)
- 每天一个小算法(insertion sort3)
- 每天一个小算法(Shell Sort1)
- 每天一个小算法(Shell Sort2)
- 每天一个小算法(Shell Sort4)
- 每天一个小算法(Shell sort5)
- 每天一个小算法之Shell排序(希尔排序)
- 每天一个小算法(matlab armijo)
- 每天一个小算法(matlab armijo)
- 每天一个小算法(Heapsort)
- 每天一个小算法(Heapsort)
- 每天一个小算法(Heapsort)
- 每天一个小算法(Heapsort)
- 每天一个小算法(Heapsort)
- 每天一个小算法 --- 排序
- 每天一个面向对象陷阱,一个算法,一个小看法
- 每天一个小算法之 选择排序算法
- 每天一个shell命令(更新中)
- CentOS上编译安装OpenCV-2.3.1与ffmpeg-2.1.2
- ADC0809 :8 位逐次逼近型A/D转换器
- 动态规划
- nandflash内存详述
- [bash]文件描述符、重定向以及tee命令
- 每天一个小算法(Shell Sort3)
- OpenCV基础篇之读取显示图片
- OpenCV基础篇之像素操作对比度调节
- Docker 和一个正常的虚拟机有何区别?
- iOS开发笔记之十七——学习Cocoa和Cocoa Touch框架
- Linux下MySQL5.6的修改字符集编码为UTF8
- MotionEvent中getX()和getRawX()的记录
- DSP/BIOS使用之初窥门径——滴答时钟及烧写Flash
- PCB设计资料:看到最后才知道是福利