leetcode 238: Product of Array Except Self
2015-07-16 14:40
337 查看
Product of Array Except Self
Total Accepted: 938Total Submissions: 2400
Given an array of n integers where n > 1,
nums, return an array
outputsuch that
output[i]is equal to the product of all the elements of
numsexcept
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.)
[思路]
维持两个数组, left[] and right[]. 分别记录 第i个元素 左边相加的和left[i] and 右边相加的和right[i]. 那么结果res[i]即为 left[i]+right[i]. follow up 要求O(1)空间. 利用返回的结果数组,先存right数组. 再从左边计算left,同时计算结果值, 这样可以不需要额外的空间.
[CODE]
public class Solution { public int[] productExceptSelf(int[] nums) { int[] res = new int[nums.length]; res[res.length-1] = 1; for(int i=nums.length-2; i>=0; i--) { res[i] = res[i+1] * nums[i+1]; } int left = 1; for(int i=0; i<nums.length; i++) { res[i] *= left; left *= nums[i]; } return res; } }
相关文章推荐
- 事务
- VC GDI+: error C2660: 'new' : function does not take 3 parameters
- The kth great number(优先队列)
- c3p0连接池的使用
- stl之基本算法《stl_algobase.h》
- druid连接池使用
- Mecanim 动画系统 一
- grunt 使用比较
- GRE写作必备句型
- linux 查看系统信息命令
- linux 查看系统信息命令
- 无线互联北京培训基地第49期学员李天游
- 初学NodeJs:
- scala 解析json字符串
- VMware Workstation 虚拟机安装后win键失效
- iOS发展- 文件共享(使用iTunes导入文件, 并显示现有文件)
- (剑指Offer)面试题22:栈的压入、弹出序列
- OAF_开发系列20_实现OAF打印功能
- 迁移mysql数据到oracle上
- SecureCRT中文显示乱码