q.push(初始状态);
while(!empty){
a = q.front();
q.pop;
for(列举a所有能达到的状态v){
if(本状态v合法){
执行标记操作;
q.push(v);
}
}
q.push();
}
q.push(初始状态);
while(!empty){
a = q.front();
q.pop;
for(列举a所有能达到的状态v){
if(本状态v合法){
执行标记操作;
q.push(v);
}
}
q.push();
}