骑士online手机版-骑士online

骑士online手机版-骑士online
浏览 (813)
  • 类型:
  • 更新:2024-07-17
  • 大小:7M
  • 所需权限:查看
  • 隐私政策:查看
本质是 广度优先 借助queue ``` var KNIGHT = { MOVE: [ {x:2,y:1}, {x:2,y:-1}, {x:-2,y:1}, {x:-2,y:-1}, {x:1,y:2}, {x:1,y:-2}, {x:-1,y:2}, {x:-1,y:-2} ] }; function getMinSteps(board, startX, startY, endX, endY) { let queue = [{x:startX,y:startY, steps: 0}] let visited = {[startX+(startY)] : true} while (queue.length) { let {x, y, steps} = queue.shift() if (x === endX && y === endY) { return steps } for (let i = 0; i < 8; i++) { let nextX = x + KNIGHT.MOVE[i].x let nextY = y + KNIGHT.MOVE[i].y if (nextX >= 0 && nextX < board.length && nextY >= 0 && nextY < board[0].length && !visited[nextX + nextY]) { visited[nextX + nextY] = true queue.push({x: nextX, y: nextY, steps: steps+1}) } } } } let board = board = new Array(16).fill(null).map((item) => { return new Array(16).fill(null) }) console.log(getMinSteps(board, 0,0,1,1)); ```
安卓版下载

同类推荐更多

专题合集更多>>

飞信2013-飞信2024下载最新版官方下载 部落冲突小曦辅助官网-小曦coc免费辅助官网版 热血骑士游戏下载 奥图核心手游官方版-奥图世界手游下载