题目
Given an> 1,an[i]is equal to theof all the[i].
:
Input:[1,2,3,4]
Output: [24,12,8,6]
Note: solvein O(n).
up:
Could you solve it withspace ? (Theas extra space for theof space.)
十分钟尝试
【LeetCode刷题MEDIM篇Product of Array Except】本来第一反应,当前元素输出值应该是全部的除以当前元素,以为很完美可以处理,写完发现,忽略了一个0,如果有0我的代码不行,为了排除0,写了分支条件,还是不行 。
文章插图
class Solution {public int[] productExceptSelf(int[] nums) {int[] output=new int[nums.length];int allProduct=1;int allProductExceptZero=1;//如果有0不对for(int i=0;i
正确解法
举例1 2 3 0 4,如果选择3,那么其实结果是左侧乘积*右侧乘积 。所以第一层循环,计算截止到某个元素的累计乘积结果,右侧,再一次循环,最后一个元素就是1,第二个就是nums[j],第三个right*=nums[j],利用right表示右侧的累计乘积结果 。所以代码如下:
class Solution {public int[] productExceptSelf(int[] nums) {int[] res=new int[nums.length];res[0]=1;for(int i=1;i=0;j--){res[j]*=right;right*=nums[j];}return res;}}
- 【leetcode_1601】【困难】maximum-number-of
- Leetcode刷题技巧,看这一篇就够了
- 附例题 【LeetCode】一文吃透线段树
- ?LeetCode刷题实战372:超级次方
- LeetCode究极刷题班
- leetcode:2021.12.19周赛 变成递增数列的最少操作次数
- [附源码]Python计算机毕业设计Django软考刷题小程序
- 程序+源码+LW文档 [附源码]计算机毕业设计Python软考刷题小程序
- 200道大数据面试常考Leetcode算法题
- 暴力解法尾对齐法双指针法 力扣刷题笔记:面试题 链表相交