• 【前后缀统计】238. 除自身以外数组的乘积


    238. 除自身以外数组的乘积

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

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

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

    示例 1:

    输入: nums = [1,2,3,4]
    输出: [24,12,8,6]
    
    • 1
    • 2

    示例 2:

    输入: nums = [-1,1,0,-3,3]
    输出: [0,0,9,0,0]
    
    • 1
    • 2

    提示:

    2 <= nums.length <= 105
    -30 <= nums[i] <= 30
    保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在  32 位 整数范围内
    
    • 1
    • 2
    • 3

    题解一:

    class Solution {
        public int[] productExceptSelf(int[] nums) {
            int n = nums.length;
            int[] leftArr = new int[n];
            int[] rightArr = new int[n];
            int leftStart = 1;
            // 计算索引左侧的乘积
            for (int i=0;i=0;i--) {
                rightArr[i] = rightStart;
                rightStart = rightStart * nums[i];
            }
            int[] result = new int[n];
            for (int i=0;i
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26

    题解二:

    class Solution {
        public int[] productExceptSelf(int[] nums) {
            int n = nums.length;
            int[] result = new int[n];
            int leftStart = 1;
            for (int i=0;i=0;i--) {
                result[i] = rightStart *  result[i] ;
                rightStart = rightStart * nums[i];
            }
            return result;
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
  • 相关阅读:
    Linux:打包压缩
    解决vue3类型“{}”上不存在属性
    设计模式-模板模式
    物资管理的挑战与机遇:利用技术提升效率与可持续性
    Jenkins自动化:简化部署流程
    Uniswap 顶流之路:机制、决策与风险分析
    学会开会|成为有连接感组织的重要技能
    【代码随想录】算法训练营 第七天 第三章 哈希表 Part 2
    算法训练(leetcode)第四十六天 | 110. 字符串接龙、105. 有向图的完全可达性、106. 岛屿的周长
    下拉框判断是否重复选中值
  • 原文地址:https://blog.csdn.net/wjavadog/article/details/126493478