我正在学习算法并来到这个河内大厦。我知道如何做到这一点。但我无法编码。我还没有读过给定的代码。我自己先尝试一下。我的方法应该是什么 - 继续尝试或阅读给定的代码或其他东西?
这种方法是否应遵循所有算法?
答案 0 :(得分:1)
您可能会觉得这很有用:
http://www.quora.com/Algorithms/How-does-one-become-good-at-solving-algorithm-programming-problems
上述帖子中的一个重要内容:
流行于相反的信念,我不认为编码解决方案 算法问题是学习算法的一种有效方法。 成功完成它的人通常很好/很快 在发现模式和解决面向算法的问题上。
您无需实际编写代码来解决示例问题 - 只是 确保你理解解决它的基本想法。
答案 1 :(得分:0)
注意这一点 -
http://www.youtube.com/watch?v=uFJhEPrbycQ&list=SPFE6E58F856038C69
如果你有3个戒指,你将如何移动整个塔?将第一个前2个环移动到临时环。将底部环移动到目的地。然后将2个环从temp复制到最终。
理解这一点的关键是递归并考虑移动N-1环