二维数组的N-1,N-1的最短路径

时间:2019-02-28 21:38:01

标签: javascript

我试图解决一个问题..但是我不知道为什么我的算法为数组的单元分配新数组而不是整数。

enter image description here

该函数的输入是字符串

这是我的尝试:

function pathFinder(maze){
  maze = maze.split('\n').map(value => [...value]);
  function pF(i, j, steps){
    if (i === maze.length || j === maze.length || i === -1 ||
      j === -1 || maze[i][j] === 'W') return;
    else if (maze[i][j] === '.' || steps < maze[i][j]){
      maze[i][j] = steps;
      pF(i, j+1, steps + 1); pF(i-1, j, steps + 1);
      pF(i+1, j, steps + 1); pF(i, j-1, steps + 1);
    }
    else return;
   }
  pF(0, 0, 0);
  if (maze[maze.length - 1, maze.length - 1] === '.') return false;
  return maze[maze.length - 1, maze.length - 1];
}

由于某种原因,我不明白,每个maze[i][j] = steps语句为单元格分配了数组。

0 个答案:

没有答案