首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Java中通过2D数组生成所有路径/路由

在Java中通过2D数组生成所有路径/路由
EN

Stack Overflow用户
提问于 2014-09-24 06:41:02
回答 1查看 1.5K关注 0票数 0

我在爪哇工作。给定一个矩阵NxM,我需要在数组中找到所有可能的路径。它只允许对角向上或向下,或向右走。4x4矩阵示例:

代码语言:javascript
复制
3  5  7  9
2  4  6  8
9  3  7  5
6  8  2  4

矩阵中的数字可以是任意值。我想通过矩阵生成所有可能的路径,从第一列中的四个数字中的一个开始。它只允许向东北、东部和东南部移动。一个示例路线:

代码语言:javascript
复制
3-5 7 9
   \
2 4 6-8
9 3 7 5
6 8 2 4

所以所有的路线都由M个数组成。我使用一个2D数组来保存这个NxM矩阵。一些更可能的途径是:

代码语言:javascript
复制
3 4 6 5
3 5 6 9
9 4 7 4
9 3 6 9

是否有一种方法可以轻松地生成Java中的所有路径?

任何帮助都是非常感谢的!

EN

回答 1

Stack Overflow用户

发布于 2014-09-24 07:01:40

您可能可以使用三种方法来执行此操作,并递归地调用它们。

  1. goNortEast();搜索索引N-1的元素(如果是N>0 ),否则将没有当前元素的元素NOrtEast,如果存在元素,也会导致新的路径。
  2. goEast();每个元素可以通过指数N向东;
  3. goSouthEast();在N+1索引处搜索元素,如果元素存在,这也会导致一个新的路径,

从1开始对每个元素调用这三个方法,以此类推。

因为,它将调用goNorthEast[]-将不满足条件goEast();-index和goSouthEast();index1现在调用这些元素的三个相同的方法。

最后,您将从启动的元素中获得所有可能的路径。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26010220

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档