#include<iostream>
using namespace std;
void ShellSort(int a[], int n)
{
for (int gap = n / 2; gap > 0; gap /= 2 )
{
for (int i = gap; i < n; i++)
{
int key = a[i];
int j = i - gap;
while (j >= 0 && key < a[j])
{
a[j + gap] = a[j];
j-=gap;
}
a[j + gap] = key;
}
}
}
int main()
{
int array[] = { 34, 65, 12, 43, 67, 5, 78, 10, 3, 70 };
int len = sizeof(array) / sizeof(int);
cout << "the original array are:" << endl;
for (int k = 0; k < len; k++)
cout << array[k] << " ";
cout << endl;
ShellSort(array, len);
cout << "The sorted array are:" << endl;
for (int k = 0; k<len; k++)
cout << array[k] << ",";
cout << endl;
return 0;
}
基本排序算法--希尔排序
最新推荐文章于 2022-11-23 10:40:05 发布