Golang | Leetcode Golang题解之第238题除自身以外数组的乘积

题目:

题解:

func productExceptSelf(nums []int) []int {
    length := len(nums)

    // L 和 R 分别表示左右两侧的乘积列表
    L, R, answer := make([]int, length), make([]int, length), make([]int, length)

    // L[i] 为索引 i 左侧所有元素的乘积
    // 对于索引为 '0' 的元素,因为左侧没有元素,所以 L[0] = 1
    L[0] = 1
    for i := 1; i < length; i++ {
        L[i] = nums[i-1] * L[i-1]
    }

    // R[i] 为索引 i 右侧所有元素的乘积
    // 对于索引为 'length-1' 的元素,因为右侧没有元素,所以 R[length-1] = 1
    R[length-1] = 1
    for i := length - 2; i >= 0; i-- {
        R[i] = nums[i+1] * R[i+1]
    }
    
    // 对于索引 i,除 nums[i] 之外其余各元素的乘积就是左侧所有元素的乘积乘以右侧所有元素的乘积
    for i := 0; i < length; i++ {
        answer[i] = L[i] * R[i]
    }
    return answer
}

相关推荐

  1. 【Leetcode】238.自身以外乘积

    2024-07-17 06:42:01       66 阅读
  2. 【力扣】238. 自身以外乘积

    2024-07-17 06:42:01       37 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-17 06:42:01       70 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-17 06:42:01       74 阅读
  3. 在Django里面运行非项目文件

    2024-07-17 06:42:01       62 阅读
  4. Python语言-面向对象

    2024-07-17 06:42:01       72 阅读

热门阅读

  1. 索引是什么

    2024-07-17 06:42:01       22 阅读
  2. 前端路由实现

    2024-07-17 06:42:01       24 阅读
  3. 如何使用ASPICE?

    2024-07-17 06:42:01       26 阅读
  4. 论文调研_组件识别相关

    2024-07-17 06:42:01       33 阅读
  5. minimap2安装与使用(v 2.28)生物信息学工具26

    2024-07-17 06:42:01       24 阅读
  6. CSS 导航栏:设计、定制与优化

    2024-07-17 06:42:01       24 阅读
  7. 用python写一个tcp/ip协议的聊天软件

    2024-07-17 06:42:01       24 阅读
  8. STM32微控制器的高级控制算法(内附资料)

    2024-07-17 06:42:01       30 阅读
  9. Python编码规范详解

    2024-07-17 06:42:01       22 阅读