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}
  • 相关阅读:
    服务器出现大量的127.0.0.1:3306 TIME_WAIT连接 解决方法 [转载]
    phpize安装php扩展CURL
    linux位数查看
    Linux下Sublime Text 3的安装
    ECstore后台报表显示空白问题解决办法
    centos 上安装phpstorm
    Nginx禁止目录执行php文件权限
    vue 动画
    vue的路由
    组件的传值 组件之间的通讯
  • 原文地址:https://www.cnblogs.com/rencoo/p/9778015.html
Copyright © 2011-2022 走看看