相关疑难解决方法(0)

计算梯子上可能路径的数量

我似乎无法想出一个算法来解决以下问题,我尝试使用一系列for循环,但它变得太复杂了:

梯子有n台阶,人们可以使用1步或2步的任意组合爬上梯子.有多少种方法可以让人爬上梯子?

因此,例如,如果梯子有3个步骤,这些将是可能的路径:

  • 1-1-1
  • 2-1
  • 1-2

并为4个步骤

  • 1-1-1-1
  • 2-1-1
  • 1-2-1
  • 1-1-2
  • 2-2

任何关于如何做到这一点的见解将不胜感激.另外,我在Java工作.

编辑:我确实会使用较小的n值,但知道如何管理较大的值肯定会很好.

java algorithm fibonacci

17
推荐指数
2
解决办法
1万
查看次数

n步骤采取1,2或3步骤.有多少种方法可以达到顶峰?

如果我们有n个步骤并且我们一次可以上升1步或2步,则步数和爬升方式之间存在斐波纳契关系.IF和ONLY,如果我们不计算2 + 1和1 + 2不同.

但是,这不再是这种情况,并且必须添加我们添加第三个选项,采取3个步骤.我该怎么做呢?

是)我有的:

1 step = 1 way
2 steps = 2 ways: 1+1, 2
3 steps = 4 ways: 1+1+1, 2+1, 1+2, 3
Run Code Online (Sandbox Code Playgroud)

我不知道从哪里可以找到n楼梯的路数

我得到7为n = 4和14得到n = 5我通过做它之前的所有组合的总和得到14 + 7 + 4 + 2 + 1.所以n步的方式= n-1种方式+ n-2种方式+ .... 1种方式假设我保留了所有的值.DYNAMIC编程.1 2和3步将是基本情况是正确的?

algorithm dynamic-programming

15
推荐指数
3
解决办法
3万
查看次数

标签 统计

algorithm ×2

dynamic-programming ×1

fibonacci ×1

java ×1