题解 | #牛群重量积#
牛群重量积
https://www.nowcoder.com/practice/d3c6930f140f4b7dbf3a53dd36742193
import java.util.*;
public class Solution {
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param nums int整型一维数组
* @return int整型一维数组
*/
public int[] productExceptSelf (int[] nums) {
int n = nums.length;
int[] newNums = new int[n + 2];
int[] res = new int[n];
Arrays.fill(res, 1);
Arrays.fill(newNums, 1);
System.arraycopy(nums, 0, newNums, 1, n);
for (int i = 3; i < n + 2; i++) {
res[0] *= newNums[i];
}
for (int i = 1; i < n; i++) {
res[i] = res[i - 1] * newNums[i - 1] / newNums[i + 2];
}
return res;
}
}
本题知识点分析:
1.数学模拟
2.数组遍历和赋值
本题解题思路分析:
1.先将数字左边的值做一个累积,赋值给当前值
2.再把数字右边的值做一次累积和第一遍结果相乘
