LeetCode-238.Product of Array Except Self
来源:互联网 发布:淘宝子账户如何认证 编辑:程序博客网 时间:2024/05/29 16:51
https://leetcode.com/problems/product-of-array-except-self/
Given an array of n integers where n > 1, nums
, return an array output
such that output[i]
is equal to the product of all the elements of nums
except nums[i]
.
Solve it without division and in O(n).
For example, given [1,2,3,4]
, return [24,12,8,6]
.
Follow up:
Could you solve it with constant space complexity? (Note: The output array does not count as extra space for the purpose of space complexity analysis.)
如果不考虑空间,可以声明两个数组存放左边乘积和右边乘积
public int[] ProductExceptSelf(int[] nums) { int n = nums.Length; int[] left = new int[n - 1]; int[] right = new int[n - 1]; int[] res = new int[n]; left[0] = nums[0]; right[0] = nums[n - 1]; for (int i = 1; i < n-1; i++) { left[i] = left[i - 1] * nums[i]; right[i] = right[i - 1] * nums[n - 1 - i]; } res[0] = right[n - 2]; res[n - 1] = left[n - 2]; for (int i = 1; i < n-1; i++) res[i] = left[i - 1] * right[n - 2 - i]; return res; }
优化一下,省去两个数组
public int[] ProductExceptSelf(int[] nums) { int n = nums.Length,right=1; int[] res = new int[n]; res[0] = nums[0]; for (int i = 1; i < n; i++) res[i] = res[i - 1] * nums[i]; for (int i = n-1; i >0; i--) { res[i] = res[i - 1] * right; right *= nums[i]; } res[0] = right; return res; }
0 0
- [leetcode] 238.Product of Array Except Self
- [LeetCode]238.Product of Array Except Self
- [leetcode] 238. Product of Array Except Self
- Leetcode 238. Product of Array Except Self
- [LeetCode]238. Product of Array Except Self
- 238. Product of Array Except Self LeetCode
- LeetCode 238. Product of Array Except Self
- [LeetCode]238. Product of Array Except Self
- LeetCode *** 238. Product of Array Except Self
- LeetCode 238. Product of Array Except Self
- 【leetcode】238. Product of Array Except Self
- leetcode-238. Product of Array Except Self
- Leetcode 238. Product of Array Except Self
- 【leetcode】238. Product of Array Except Self
- LeetCode- 238. Product of Array Except Self
- leetcode 238. Product of Array Except Self
- 【leetcode】238. Product of Array Except Self
- leetcode:238. Product of Array Except Self
- 弹性SCrollView
- 基础
- Linux系统基本操作相关命令
- windows 10 安装 hexo 续
- java applet 一个简单的例子(applet+html)
- LeetCode-238.Product of Array Except Self
- Java Servlet完全教程
- Laravel ——路由(中间件与路由组)
- 一个很酷的加载loading效果
- 平时犯的错
- oracle数据库创建用户、 创建角色和权限管理代码示例
- GC(浅析)
- Android Studio png图片 libpng error not a png file问题
- java界面,BorderLayout,GridLayout,FlowLayout