您好,欢迎来到汇智旅游网。
搜索
您的当前位置:首页leetcode 238. 除自身以外数组的乘积-java题解

leetcode 238. 除自身以外数组的乘积-java题解

来源:汇智旅游网

题目所属分类

前缀积和后缀积

给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。

题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。

请不要使用除法,且在 O(n) 时间复杂度内完成此题。

题解

class Solution {
    public int[] productExceptSelf(int[] nums) {
        int n = nums.length ;
        int [] res = new int[n] ;
        res[0] =1 ;
        for(int i = 1 ; i < n ; i++) res[i] = res[i-1] * nums[i-1] ;
        int suffix = 1 ;
        for(int i = n - 1 ; i >= 0 ; i--){
            res[i] *= suffix ;
            suffix *= nums[i] ;
        }
        return res;
    }
}

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- hzar.cn 版权所有 赣ICP备2024042791号-5

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务