面试复习(C++)之希尔排序

#include<iostream>
using namespace std; void Shellsort(int *a,int len)
{
int gap;
for(gap=;gap>;gap--)
{
for(int i=;i<gap;i++)
for(int j=i+gap;j<len;j=j+gap)
{
if(a[j]<a[j-gap])
{
int temp=a[j];
int k=j-gap;
while(k>=&&a[k]>temp)
{
a[k+gap]=a[k];
k=k-gap;
}
a[k+gap]=temp;
}
}
}
}
int main()
{
int n=;
int a[];
for(int i=;i<n;i++)
{
cin>>a[i];
}
Shellsort(a,n);
for(int j=;j<n;j++)
{
cout<<a[j]<<" ";
}
}
上一篇:socket接收大数据流


下一篇:SQL Server视图