public class Solution {
public double maxProduct(double[] arr) {
if(arr.length==0) return 0;
double max = arr[0];
double min = arr[0];
double val = max;
double tmp = 1;
for(int i=1;i<arr.length;i++){
tmp = max; //此处要先把上一把的max保留一下
max = Math.max(arr[i],arr[i]*max);
max = Math.max(max,arr[i]*min);
min = Math.min(arr[i],arr[i]*min);
min = Math.min(min,arr[i]*tmp);
val = Math.max(val,max);
}
return val;
}
}