【发布时间】:2014-10-19 07:08:54
【问题描述】:
我正在尝试编写 javascript 来映射从根到叶的所有唯一路径,每个节点都可以连接到下一行的相邻节点。例如,根可以连接到下一行作为 4,2 或 4,4。叶子的唯一路径是 4,2,4,2,1
4
2 4
6 4 2
7 4 2 1
9 4 2 1 4
我能够将三角形转换成这样结构的二维数组。
a[0] = [4]
a[1] = [2,4]
a[2] = [6,4,2]
a[3] = [7,4,2,1]
a[4] = [9,4,2,1,4]
我想找到从根到叶的所有路径,例如
4,2,6,7,9
4,2,6,7,4
4,2,6,4,4
我是深度优先搜索和广度优先搜索的新手。这些算法可以实现吗?
【问题讨论】:
-
节点值序列不足以描述路径,因为每个级别中可以有相同的值。您需要添加一些元数据。
-
您需要添加有关已连接节点的信息,而不仅仅是树中的节点。例如,您可以给每个节点一个唯一的 ID,并列出节点之间的连接——因为您的树看起来是分层的,所以可以使用一组父子关系。
标签: javascript arrays traversal depth-first-search breadth-first-search