var right = 2, left = 0, a = [1,2,3], c = a[left++] * (right - left);做算法题的时候遇到个问题,c求出来后让left加一,想象中应该是1*(2-0)=2,最后结果是1,请问是怎么回事?
1 回答
汪汪一只猫
TA贡献1898条经验 获得超8个赞
c = a[0] * (2- 1)
如果是 c = a[++left] * (right - left); 结果就是 2 了。
left 先参与运算,然后自增。a[left++] 是 a[0],left 变成 1
然后再计算 * (right - left),结果是 1 * (2 - 1)。
添加回答
举报
0/150
提交
取消
