void ShellSort ( vector<
int> &
v ) {
int P =
4;
int m[] = {
5,
3,
2,
1};
for (
int idx =
0; idx < P; idx++
) {
int len =
m[idx];
for (
int sec =
1; sec < ( v.size()/len + ( v.size()%len !=
0 ) ); sec++
) {
int end = ( sec*len + len ) < v.size() ? ( sec*len +
len ) : v.size();
for (
int i = sec*len; i < end; i++
) {
for (
int j = ( sec -
1 ) * len; j < ( sec -
1 ) * len + len; j++
) {
if ( v[i] <
v[j] ) {
int t =
v[i];
v[i] =
v[j];
v[j] =
t;
}
}
}
}
}
}
转载于:https://www.cnblogs.com/tsubasa/archive/2012/11/29/2795028.html
相关资源:数据结构—成绩单生成器