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
提交
取消