题目大概理解之后直接上我的题解:不准用除法,那我就分步乘法,给每个数的前面乘积*后面乘积
不多bb直接上代码
package Leetcode;
public class Demo238 {
public static void main(String[] args) {
int[ ] a={1,2,3,4,5,6};
a(a);
}
public static void a(int [] a){
//public int[] a(int [] a){
int [] output=new int [a.length];
output[0]=1;//将开头设为1
for (int i = 1; i < a.length; i++) {
output[i]=a[i-1]*output[i-1];
// System.out.println(output[i]);
}
int right=1;
for (int i = a.length-1; i >=0; i--) {
output[i]*=right;//先赋值后变数
right*=a[i];//right变数
//System.out.println(output[i]); 这时候输出是倒序的
}
//return output;
}
}