构建乘积数组
2017-05-23 22:14
246 查看
一、题目: 构建乘积数组
题目来源
给定一个数组A[0,1,…,n-1],请构建一个数组B[0,1,…,n-1],其中B中的元素B[i]=A[0]A[1]…A[i-1]*A[i+1]…*A[n-1]。不能使用除法。
二、题目分析
计算前i - 1个元素的乘积,及后N - i个元素的乘积分别保存在两个数组中
三、代码
题目来源
给定一个数组A[0,1,…,n-1],请构建一个数组B[0,1,…,n-1],其中B中的元素B[i]=A[0]A[1]…A[i-1]*A[i+1]…*A[n-1]。不能使用除法。
二、题目分析
计算前i - 1个元素的乘积,及后N - i个元素的乘积分别保存在两个数组中
三、代码
import java.util.ArrayList; public class Solution { public int[] multiply(int[] A) { int len=A.length; int[] b=new int[len]; for(int i=0;i<len;i++){ b[i]=1; for(int j=0;j<i;j++){ b[i]*=A[j]; } for(int k=i+1;k<len;k++){ b[i]*=A[k]; } } return b; } }