如何从查找路径的Java递归问题中添加一些内容?
我正在制作一个Java程序,它计算路径的数量。我希望它只向上(北)和向右(东)。我还希望它输出所采用的路径。有什么我能做的吗如何从查找路径的Java递归问题中添加一些内容?,java,recursion,Java,Recursion,我正在制作一个Java程序,它计算路径的数量。我希望它只向上(北)和向右(东)。我还希望它输出所采用的路径。有什么我能做的吗 import java.io.*; public class PathsRecursion { public static int countPaths(int n, int e) { int dp[][] = new int[n + 1][e + 1]; for (int i = 0; i <= n; i++) {
import java.io.*;
public class PathsRecursion {
public static int countPaths(int n, int e) {
int dp[][] = new int[n + 1][e + 1];
for (int i = 0; i <= n; i++) {
dp[i][0] = 1;
}
for (int i = 0; i <= e; i++) {
dp[0][i] = 1;
}
for (int i = 1; i <= n; i++)
for (int j = 1; j <= e; j++) {
dp[i][j] = dp[i - 1][j] + dp[i][j - 1];
}
return dp[n][e];
}
public static void main(String[] args) {
int n = 1, e = 3;
System.out.println("Number of Paths: " + countPaths(n, e));
}
}
import java.io.*;
公共类路径递归{
公共静态int countpath(int n,int e){
int dp[][]=新int[n+1][e+1];
对于(int i=0;i您向dp数组添加了一个额外的行和列。它需要是n
bye
数组,而不是n+1
bye+1
数组
import java.io.*;
public class PathsRecursion {
public static int countPaths(int n, int e) {
int dp[][] = new int[n][e];
for (int i = 0; i <= n; i++) {
dp[i][0] = 1;
}
for (int i = 0; i <= e; i++) {
dp[0][i] = 1;
}
for (int i = 1; i <= n; i++)
for (int j = 1; j <= e; j++) {
dp[i][j] = dp[i - 1][j] + dp[i][j - 1];
}
return dp[n - 1][e - 1];
}
public static void main(String[] args) {
int n = 1, e = 3;
System.out.println("Number of Paths: " + countPaths(n, e));
}
}
import java.io.*;
公共类路径递归{
公共静态int countpath(int n,int e){
int dp[][]=新的int[n][e];
for(int i=0;i Java和JavaScript是完全不同的语言,它们的名称中只共享“Java”,但仅此而已。为什么这不起作用?预期的输出是什么,您得到的输出是什么?我会得到一个BoundsException数组。最后,您必须访问dp[n-1][e-1];
而不是返回dp[n] [e];
因为0索引。