希尔排序-c++
来源:互联网 发布:wwe2k15优化补丁 编辑:程序博客网 时间:2024/06/06 15:02
希尔排序(最后一步进行的是直接插入排序)
:以多个不同增量进行多次插入排序,增量不断减少,直至为1,进行直接插入排序
:经验gap=length/2;
#include<iostream>#include<string>using namespace std;void ShellSort(int *pdata,int length){int gap=length/2;int key;while(gap>=1){for (int i=gap;i<length;i++) {key=pdata[i];//保存后半段要插入的数据int j=i-gap;for (j;pdata[j]>key&&j>=0;j-=gap) //在前半段中,大的数据分别向后移动{pdata[j+gap]=pdata[j]; //没间隔gap为一组}pdata[j+gap]=key;//插入keycout<<"the "<<i<<"round:"<<endl;for(int i=0;i<length;i++)cout<<pdata[i];cout<<endl;}gap=gap/2;}}int main(){int data[]={6,5,4,3,2,1};int data2[]={1,2,3,4,5,6};int data3[]={9,8,7,6,5,4,3,2,1};cout<<"----------------------------------"<<endl;ShellSort(data3,9);return 0;}
理解倒不难,程序编起来感觉有点困难。
0 0
- 希尔排序C语言
- c语言希尔排序
- C++,希尔排序
- 希尔排序(c++)
- c++ 希尔排序
- 希尔排序(C语言版)
- C语言希尔排序
- 希尔排序c语言版
- 希尔排序 C语言版
- C语言------希尔排序
- C希尔排序
- C 插入排序 希尔排序
- 希尔排序(C语言)
- C语言希尔排序了解
- 希尔排序C语言代码
- C语言实现希尔排序
- 希尔排序(C语言版)
- 算法 - 希尔排序(C)
- HDOJ 题目2059 龟兔赛跑(动态规划)
- poj-3262-Protecting the Flowers
- POJ 1185 炮兵阵地
- OC类和对象
- html表格合并(行,列)
- 希尔排序-c++
- hibernate中criteria的用法
- Core Data入门
- 第156天
- 把Storyboard减轻的方法
- 设计模式3—State设计模式
- Linux系统的磁盘管理及分区应用
- OC类
- IOS成长中 C语言之进制