作业帮 > 综合 > 作业

简述以下算法的功能(队列的元素类型为int)

来源:学生作业帮 编辑:搜搜考试网作业帮 分类:综合作业 时间:2024/05/15 19:22:44
简述以下算法的功能(队列的元素类型为int)
void algo2(Queue&Q)

Queue q0,q1;
int x;;
while(!Empty(Q)){
x=GetHead(Q);
Remove (\x05Q)
if (x%2==0)
Append (q0,x);
else
Append (q1,x);
}
while(!Empty(q1)){
Append (Q,GetHead(q1));
Remove (\x05q1);
}
while(!Empty(q0)){
Append (Q,GetHead(q0));
Remove (\x05q0);
}
}
简述以下算法的功能(队列的元素类型为int)
while(!Empty(Q)){
x=GetHead(Q);
Remove (Q)
if (x%2==0)
Append (q0,x);
else
Append (q1,x);
}
这一段是将队列分成奇数队列和偶数队列
while(!Empty(q1)){
Append (Q, GetHead(q1));
Remove (q1);
}
这一段是将奇数队列中的元素放回原来的队列
while(!Empty(q0)){
Append (Q, GetHead(q0));
Remove (q0);
}
这一段是将偶数队列中的元素放回原来的队列
所以这个算法的功能整体来说就是
将一个队列中的奇数和偶数分开,并且将奇数移到队前,偶数移到队尾