用C++实现希尔排序
来源:互联网 发布:手把手教开淘宝店 编辑:程序博客网 时间:2024/06/08 06:12
本文原创,转载请注明出处(羅小亮博客)。如果本文如果有雷同观点,纯属巧合。如果有引述他人成果,必会给出处。
希尔排序其实只是在直接插入排序上进行改进,直接插入排序是按照间隔1来进行排序的,而希尔排序这里是按照间隔gap来进行排序的。读者可以参照我的上一篇文章“用C++实现直接插入排序”,理解了直接插入排序后,只需要把直接插入排序中的间隔1修改成自己gap就行
#include <iostream>
using namespace std;
void ShellSort(int a[],int n);
int main()
{
int a[10]={5,8,2,1,6,7,9,4,3,0};
ShellSort(a,10);
for(int i=0;i<10;++i)
cout << a[i];
cout << endl;
system("pause");
return 0;
}
void ShellSort(int a[],int n)
{
int temp,i,j;
int gap=n;
do
{
gap=gap/3+1;
for(i=gap;i<n;++i)
{
if(a[i]<a[i-gap])
{
temp=a[i];
for(j=i-gap;(j>=0)&&(a[j]>temp);j=j-gap)
{
a[j+gap]=a[j];
}
a[j+gap]=temp;
}
}
}while(gap>1);
}
阅读全文
0 0
- C语言实现希尔排序
- c语言实现希尔排序
- C语言实现希尔排序
- 希尔排序C语言实现
- 希尔排序-C语言实现
- 希尔排序c语言实现
- 希尔排序-c语言实现
- 排序算法(C实现)------- 希尔排序
- C语言实现排序算法---希尔排序
- 希尔排序及C语言实现
- 希尔排序 shellinsert c语言实现
- 希尔排序算法实现(C++)
- 希尔排序Linux下c 实现
- 希尔排序Linux下C实现
- 希尔排序 以及c的实现函数
- Xcode gcc C++(希尔排序实现)
- 希尔排序(C语言实现)
- 希尔排序及C语言实现
- PHP 的 __FILE__ 常量
- Java学习中final关键字用法总结
- Data Warehouse
- linux11
- SharedPreferences采坑记
- 用C++实现希尔排序
- dateutils
- Android调用系统相机,兼容7.0系统
- AIX编译运行问题
- SQL语句
- aop理解
- ConfigReader(四十六)—— ReadShopConfig
- 属性动画
- 一流的报表产品Nevron Chart for SSRS更新v2016.1丨附下载