zoukankan      html  css  js  c++  java
  • 238. 除自身以外数组的乘积

    给定长度为 n 的整数数组 nums,其中 n > 1,返回输出数组 output ,其中 output[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积。

    示例:

    输入: [1,2,3,4]

    输出: [24,12,8,6]

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

    进阶:

    你可以在常数空间复杂度内完成这个题目吗?( 出于对空间复杂度分析的目的,输出数组不被视为额外空间。)

     1/**
    2 * @param {number[]} nums
    3 * @return {number[]}
    4 */

    5
    6var productExceptSelf = function (nums) {
    7    var r = []
    8    if(nums.includes(0)) {
    9        // 包含0
    10        for (var i=0; i<nums.length; i++) {
    11            var mul = 1
    12            for (var j = 0; j < nums.length; j++) {
    13                if (j !== i) mul = mul * nums[j];
    14            }
    15            r.push(mul);
    16        }
    17    } else {
    18        // 不含0
    19        var mul = 1
    20        for(var i=0; i<nums.length; i++) {
    21            mul = mul * nums[i]
    22        }
    23
    24        for(var i=0; i<nums.length; i++) {
    25            r.push(mul / nums[i])
    26        }
    27    }
    28
    29    return r
    30}
  • 相关阅读:
    (二)WCF的Binding模型
    (一)WCF基础
    EF映射——从数据库更新实体
    没有什么不可能(1)
    MySQL SQL Training
    MySQL 并发事务问题以及事务的隔离级别
    MySQL 数据库面试题
    MySQL create table语法详解
    MySQL create table语法中的key与index的区别
    MySQL 官方样板数据库sakila
  • 原文地址:https://www.cnblogs.com/rencoo/p/9778015.html
Copyright © 2011-2022 走看看