比如一个2*3的矩阵,
1 2 3
4 5 6
从1出发走到6,则可能的走法为:1 2 3 6, 1 2 5 6, 1 4 5 6共有三种。
这道题可以看成是深度优先遍历一颗树。解法为:
public class MatrixTraversal {
public static int getTraversal(int p, int q) {
int num = 0;
if (p == 1 && q == 1) {
return 1;
}
if (p > 1) {
num += getTraversal(p - 1, q);
}
if (q > 1) {
num += getTraversal(p, q - 1);
}
return num;
}
public static void main(String[] args) {
int num = getTraversal(2, 3);
System.out.println(num);
}
}
本文介绍了一种通过深度优先搜索解决矩阵路径问题的方法。对于一个指定大小的矩阵,从起点出发,只允许向右或向下移动,计算到达终点的所有可能路径数量。文中提供了一个具体的例子并附带了实现该算法的Java代码。

被折叠的 条评论
为什么被折叠?



