您的位置:首页 > 运维架构 > Shell

排序算法——希尔排序(Shell Sort)

2014-08-29 10:37 477 查看
希尔排序(Shell Sort)

C/C++代码:

void ShellSort( int r[], int n )
{
int temp, i, j;
for ( int d = n / 2; d > 0; d = d / 2)
{
for ( i = d; i < n; i++ )
{
temp = r[i];
for( j = i - d; j >= 0 && temp < r[j]; j = j - d)
{
r[j + d] = r[j];
}
r[j + d] = temp;
}
}
}


void Print( int r[], int n )
{
for ( int i = 0; i < n; i++ )
{
cout << r[i] << "  ";
}
cout << endl;
}


int main()
{
int r[] = { 96, 61, 18, 26, 55, 42, 4, 72, 83 };
int n = sizeof( r ) / sizeof( int );
Print( r, n );
ShellSort( r, n );
Print( r, n );

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: