Create shellSort.cpp

This commit is contained in:
hao14293
2018-11-18 20:42:16 +08:00
committed by GitHub
parent 736b9804d3
commit fdf769a9e3

View File

@@ -0,0 +1,21 @@
#include <iostream>
using namespace std;
int main(){
int a[] = {6, 5, 2, 8, 4, 1, 3, 7};
int len = sizeof(a) / sizeof(a[0]);
int step = len / 2; //初次增量为len/2
while(step > 0){
for(int i = step; i < len; i += step){
while(i >= step && a[i - step] > a[i]){
int temp = a[i - step];
a[i - step] = a[i];
a[i] = temp;
i -= step;
}
}
step = step / 2;
}
for(int i = 0; i < len; i++)
cout << a[i];
return 0;
}