GO动态规划-算法实战-不同路径&&爬楼梯_aichojie的博客-优快云博客
在机器人 不同路径这道题中,使用降维来计算。我们都可以理解 f( i , j) = f ( i -1, j) + f (i, j - 1)
这个意思是,当前位置 = 上面 加 左边,但是降维后 变成了 f (j) = f(j) + f(j - 1)
开始我一直在思考,f(5) = f(5) + f(4) ,f(5) 不是没有赋值麻,一直等于f(4)啊。
后面我加了一些打印才明白。
因为 当 i= 1 时,j 已经计算了一轮,f(5) 此刻时 i = 1这一列的值
当 i=2 时,这时需要的时左和上,上就时 f(i -1 , j) = f(2-1, j) = f(1, j) = f(j)
f(i - 1, j)就是上面付过值的f(j),所以只用关注左边,就是f(j) = f(j) + f(j-1)
f(j -1) 就是上一轮计算的,也就是当前左边的值
func uniquePath