所有车厢依次检查,若是硬车厢则入栈,软车厢则留在车道中,等检查完毕后再将硬车厢调度出来
void arrange(char *train){
char *p=train,*q=train,c;
stack s;
InitStack(s);
while(*p){
if(*p=='H')
Push(s,*p);
else
*(q++)=*p;//把S往前调,q++往后移一位
//q始终指向软车厢的最后一节的后面
p++;
}
while(!StackEmpty(s)){
Pop(s,c);
*(q++)=c;
}
}