0
我想将一些C代码转换为Go。将前缀转换为后
for i := l + 1; i < r; ++i {
ans = max(ans, nums[l]*nums[i]*nums[r]+maxCoin(dp, l, i, nums)+maxCoin(dp, i, r, nums))
}
Go没有前缀运算符,该如何将此循环转换为使用postfix?
我想将一些C代码转换为Go。将前缀转换为后
for i := l + 1; i < r; ++i {
ans = max(ans, nums[l]*nums[i]*nums[r]+maxCoin(dp, l, i, nums)+maxCoin(dp, i, r, nums))
}
Go没有前缀运算符,该如何将此循环转换为使用postfix?
使用后缀increment statement,它不会使在这种情况下,任何的区别:
for i := l + 1; i < r; i++ {
ans = max(ans, nums[l]*nums[i]*nums[r]+maxCoin(dp, l, i, nums)+maxCoin(dp, i, r, nums))
}
的差别只有当你使用由递增/递减操作形成的表达式的结果重要,但因为在Go中,他们甚至不是运营商,而是声明,这并不重要。推理,请参阅FAQ: Why are ++ and -- statements and not expressions? And why postfix, not prefix?
好吧,我没有得到我期待的结果,所以认为它可能与此有关。但很高兴知道,谢谢。 – chefcurry7