
Q. Bagaimana untuk mencari jalan ke Rumah / Sumber ke destinasi menggunakan rekursi
"XXXXXXEX",
"X X",
"XXXXXXEX",
"X X X",
"X X X",
"X XXX X",
"X X",
"XSXXXXXX"
Daripada 2 corak ini ketahui laluan dari Sumber ke destinasi
// const maze = [ // "XXXXXEX", // "X X", // "XSXXXXX" // ]; const maze = [ "XXXXXEX", "X X X", "X X X", "X XXX X", "X X", "XSXXXXXX" ]; const dir = [ [-1, 0], [1, 0], [0, -1], [0, 1] ]; visited = {}; path = []; const findPath = (row, col) => { //1. out of bound condition if (row < 0 || row >= maze.length || col < 0 || col >= maze[0].length) { return false; } //2. Already visited if (visited[`${row}_${col}`]) { return false; } // found road block if (maze[row][col] === 'X') { return false; } // found the End if (maze[row][col] === 'E') { path.push(`${row}_${col}`); return true; } path.push(`${row}_${col}`); visited[`${row}_${col}`] = true; for (let item of dir) { const [x, y] = item; if (findPath(row+x, col+y)) { return true; } } path.pop(); return false; }; findPath(5,1); // findPath(2,1); console.log(path) /* node /tmp/n2GEk3kzOo.js [ '5_1', '4_1', '4_2', '4_3', '4_4', '4_5', '3_5', '2_5', '1_5', '0_5' ] */
Atas ialah kandungan terperinci Masalah Keras Rekursif Menggunakan Javascript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!
Bagaimana untuk membuka Windows 7 Explorer
Bagaimana untuk membaca lajur dalam excel dalam python
Bagaimana untuk menjalankan kod html dalam vscode
Apakah maksud kadar bingkai?
Perisian partition cakera keras mudah alih
tutorial ajax
Bagaimana untuk menukar phpmyadmin kepada bahasa Cina
Apakah saiz kertas a5