범위 우선 검색 (C 언어 인 스 턴 스)
1781 단어 데이터 구조
:
void BFS(Vertex V){ // V
visited[V]=true; // V
Enqueue(V,Q); // V
while(!IsEmpty){
V=Dequeue(Q); //
for(V W){
if(!visted[w]){
visted[w]=true;
Enqueue(V,Q); // V
}
}
}
}
여기 서 실례 를 사용 하여 설명 합 니 다
#include
struct note{
int x;//
int y;//
int f;//
int s;//
};
int main(){
struct note que[2501];//
int a[51][51]={0},book[51][51]={0};
//
int next[4][2]={{0,1},{1,0},{0,-1},{-1,0}};
int head,tail;
int i,j,m,n,startx,starty,p,q,tx,ty,flag;
scanf("%d %d",&n,&m);
for(i=1;i<=n;i++){
for(j=1;j<=m;j++){
scanf("%d",&a[i][j]);
}
}
//
scanf("%d %d %d %d",&startx,&starty,&p,&q);
//
head=1;tail=1;
que[tail].x=startx;
que[tail].y=starty;
que[tail].f=0;
que[tail].s=0;
tail++;
book[startx][starty]=1;
flag=0;//
//
while(headn||ty<1||ty>m){
continue;
}
if(a[tx][ty]==0&&book[tx][ty]==0){
book[tx][ty]=1;
que[tail].x=tx;
que[tail].y=ty;
que[tail].f=head;
que[tail].s=que[head].s+1;
tail++;
}
if(tx==p&&ty==q){
flag=1;
break;
}
}
if(flag==1){
break;
}
head++;
}
printf("%d",que[tail-1].s);
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
정수 반전Udemy 에서 공부 한 것을 중얼거린다 Chapter3【Integer Reversal】 (예) 문자열로 숫자를 반전 (toString, split, reverse, join) 인수의 수치 (n)가 0보다 위 또는 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.