在下面的图结构中,我们有多少种方式可以从底层到达顶层?他们对这个问题有任何递归定义吗?假设一步之后我们不能在同一层,我们总是朝着根节点或峰移动。
O
O O
O O O
这里 n=3(#nodes in bottom layer = graph height + 1)。对于此图,我们有 4 种方法从底层移动到峰值。我们如何将其推广到任何“n”?另外,我们如何使用动态规划来做到这一点?
最佳答案
假设从给定的节点只能向左上或向右爬,那么结果似乎是 2^N,其中 N 是树的高度。
解释:从节点(i,j)出发的路径数为c(i,j)=c(i-1,j-1)+c(i-1,j)。这会产生 pascal triangle ,其中每个级别 N 的总和为 2^N。
关于java - 到达二进制图中根节点的方法数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22081336/