给你一个长度为 n 的整数数组 nums,其中 n大于1,返回输出数组 output ,其中 output[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积。
发布日期:2021-10-06 02:38:37 浏览次数:6 分类:技术文章

本文共 889 字,大约阅读时间需要 2 分钟。

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

示例:

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

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

提示:题目数据保证数组之中任意元素的全部前缀元素和后缀(甚至是整个数组)的乘积都在 32 位整数范围内。

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

方法一:

class Solution {

    public int[] productExceptSelf(int[] nums) {

        if(nums == null || nums.length <= 1) return null;

 

        int len = nums.length;

        int[] res = new int[len];

        int result = 1;

        for(int i = 0 ; i< len; i++){

            result = 1;

            for(int j = 0;j < len; j++){

                if(i != j)

                    result *= nums[j];

            }

            res[i] = result;

        }

        return res;

    }

}

方法二:

class Solution {

    public int[] productExceptSelf(int[] nums) {

        if(nums == null || nums.length <= 1) return null;

        int len = nums.length;

        int[] res = new int[len];

        int result = 1;

        res[0] = 1;

        for(int i = 1; i< len; i++){

            result *= nums[i-1];

            res[i] = result;

        }

        result = 1;

        for(int i= len-2; i>=0; i--){

            result *= nums[i+1];

            res[i]  *=  result;

        }

        return res;

    }

}

 

 

 

 

转载地址:https://blog.csdn.net/luxuiary/article/details/106543672 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:MyISAM 和 InnoDB 锁总结
下一篇:【每日一练】给你一个数组 candies 和一个整数 extraCandies ,其中 candies[i] 代表第 i 个孩子拥有的糖果数目。

发表评论

最新留言

表示我来过!
[***.240.166.169]2024年04月22日 15时28分24秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

spring boot 与 Ant Design of Vue 实现删除按钮(十八) 2019-04-27
spring boot 与 Ant Design of Vue 实现角色管理布局以及角色的列表(十九) 2019-04-27
spring boot 与 Ant Design of Vue 实现新增角色(二十) 2019-04-27
spring boot 与 Ant Design of Vue 实现修改角色(二十一) 2019-04-27
spring boot 与 Ant Design of Vue 实现删除角色(补二十一) 2019-04-27
spring boot 与 Ant Design of Vue 实现组织管理布局的实现(二十二) 2019-04-27
spring boot 与 Ant Design of Vue 实现左侧组织树(二十三) 2019-04-27
spring boot 与 Ant Design of Vue 实现新增组织(二十四) 2019-04-27
spring boot 与 Ant Design of Vue 实现修改组织(二十五) 2019-04-27
spring boot 与 Ant Design of Vue 实现删除组织(二十六) 2019-04-27
spring boot 与 Ant Design of Vue 实现获取用户列表(二十七) 2019-04-27
spring boot 与 Ant Design of Vue 实现新增用户(二十八) 2019-04-27
spring boot 与 Ant Design of Vue 实现修改用户(二十九) 2019-04-27
spring boot 与 Ant Design of Vue 实现删除用户(三十) 2019-04-27
spring boot 与 Ant Design of Vue 鉴权体系登录的实现(三十一) 2019-04-27
spring boot 与 Ant Design of Vue 鉴权体系获取用户信息的实现(三十二) 2019-04-27
Druid连接池实现自定义场景的多数据库的连接 2019-04-27
CentOs7命令行(静默)的方式安装oracle数据库 2019-04-27
基于VMware安装CentOs7的镜像 2019-04-27
PL/SQL数据库管理工具的使用 2019-04-27