shellsort.cpp
来自「希尔排序(缩小增量法) 排序过程:先取一个正整数d1<n」· C++ 代码 · 共 46 行
CPP
46 行
#include<iostream>
#include<iomanip>//include function setw();
//#include<stdlib.h>
using namespace std;
void InsertSort(int r[], int n)
{
int i,j,x,d;
d=n/2;
while(d>=1)
{
for(i=d;i<n;i++)
{
x=r[i];
for(j=i-d;j>=0;j-=d)
if(x<r[j])
r[j+d]=r[j];
else break;
r[j+d]=x;//j=-1只交换一次
}
d/=2;
}
}
void Print(int r[], int n)
{
for(int i=0;i<n;i++)
cout<<setw(5)<<r[i]<<",";
cout<<endl;
}
//#define NUM 20
int main()
{
int s[6]={10,24,6,12,7,8};
InsertSort(s,6);
// InsertSort(s,sizeof(s)/sizeof(int));
cout<<"put out 5 empty every element:\n";
Print(s,6);
// Print(s,sizeof(s)/sizeof(int));
/*int s[NUM];
int i;
srand(1);
for(i=0;i<NUM;i++)
s[i]=rand()%100;
InsertSort(s,sizeof(s)/sizeof(int));
Print(s,sizeof(s)/sizeof(int));*/
return 0;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?