资源描述:
《用队列用队列实现迷宫问题.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、用队列实现迷宫问题:以下为代码(结果为输出路径)#includeusingnamespacestd;typedefstruct{intx;inty;intcur;}link;voidprint(linkq[200],intfront){cout<<"所经过的路径为:"<2、5],intp2[5]){inti,j,x,y,k,front,rear,find=1;x=q[0].x=1;y=q[0].y=1;q[0].cur=0;front=rear=1;while(find==1){for(k=1;k<=4;k++){i=x+p1[k];j=y+p2[k];if(p[i][j]==0){q[rear].x=x;q[rear].y=y;q[rear].cur=rear+1;p[x][y]=-1;x=i;y=j;rear++;find=1;break;}if(k==4&&p[i][j]!=0){i=i-p1[k];j=j-p2[k]
3、;p[i][j]=-1;x=q[rear-1].x;y=q[rear-1].y;rear--;find=1;break;}if(x==8&&y==8){q[rear].x=x;q[rear].y=y;q[rear].cur=0;print(q,front);find=0;break;}}//forif(rear==0){cout<<"没有一条路可以到达目的地"<4、[3]=0;p1[4]=-1;p2[1]=1;p2[2]=0;p2[3]=-1;p2[4]=0;intp[10][10]={1,1,1,1,1,1,1,1,1,1,1,0,0,1,0,0,0,0,0,1,1,0,0,0,1,1,1,1,0,1,1,1,0,0,0,1,1,1,0,1,1,0,1,0,0,0,1,1,0,1,1,0,1,1,0,0,0,1,0,1,1,0,1,0,1,0,0,0,1,1,1,0,1,1,1,1,0,0,0,1,1,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1};find(q,p,p1,p2);pr
5、intf("HelloWorld!");return0;}//main