アルゴリズム学習--深さ優先探索から迷路を歩くことと最短経路を探すこと(二)


地図がn*mの行列であると仮定すると、歩ける格子は0、歩けない格子は1、終点はx=p、y=qにあり、起点(0,0)から終点までの最短経路は何ですか.
まず、道を探す方向をどのように操作しますか.
int next[4][2]={{0,1},//   
                {1,0},//   
                {0,-1},//   
                {-1,0}};//   

最小値の更新:
void find_out(int x, int y ,int step)
{
    if(x==p && y==q){        //        
        
        if(step

次のステップを判断します.
for(k=0;k<=3;k++){
    //         :
    tx=x+next[k][0];
        
    ty=y+next[k][1];


}

全体コードセグメント:
int min=9999999;
int map[100][100];
int book[100][100];

int find_out(int x,int y,int step)
{
    int next[4][2]={{0,1},//   
                {1,0},//   
                {0,-1},//   
                {-1,0}};//   
    
    int tx,ty,k;

    if(x==p && y==q){        //        
        
        if(stepn||ty<1||ty>m){
            continue;
         }
        //                  ;
        if(map[tx][ty]==0 && book[tx][ty]==0){
            book[tx][ty]=1;
            dfs(tx,ty,step+1);
            book[tx][ty]=0;
        }
    }
    return step ;
}