构建乘积数组

Posted strive-19970713

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了构建乘积数组相关的知识,希望对你有一定的参考价值。

题目描述

给定一个数组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]。不能使用除法。
import java.util.ArrayList;

/**
 * 
 * @author gentleKay
 * 题目描述
 * 给定一个数组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]。
 * 不能使用除法。
 * 用例:
 * 		[1,2,3,4,5]
 * 对应输出应该为:
 * 		[120,60,40,30,24]
 */

public class Main50 

	public static void main(String[] args) 
		// TODO Auto-generated method stub
		int[] A = 1,2,3,4,5;
		System.out.println(Main50.multiply(A));
	
	
	public static int[] multiply(int[] A) 
		ArrayList<Integer> array = new ArrayList<>();
		
		for (int i=0;i<A.length;i++) 
			int sum = 1;
			for (int j=0;j<A.length;j++) 
				if (j == i) 
					continue;
				
				sum = sum * A[j];
			
			array.add(sum);
		
		int[] a = new int[array.size()];
		for (int i=0;i<array.size();i++) 
			a[i] = array.get(i);
			System.out.println(a[i]);
		
		return a;
    

  

以上是关于构建乘积数组的主要内容,如果未能解决你的问题,请参考以下文章

构建乘积数组

数组---构建乘积数组

构建乘积数组

构建乘积数组

剑指offer-66 构建乘积数组

剑指 Offer 66. 构建乘积数组