左边和右边分别乘起来,最后两者再相乘。
class Solution { public int[] constructArr(int[] a) { int len = a.length; int[] ans = new int[len]; for(int i = 0, tmp = 1; i < len; tmp *= a[i], i++) { ans[i] = tmp; } for(int i = len-1, tmp = 1; i >= 0; tmp *= a[i], i--) { ans[i] *= tmp; } return ans; }}
京公网安备 11010502049817号