leetcode——238——Product of Array Except Self
2016-04-22 10:49
441 查看
Given an array of n integers where n > 1,
Solve it without division and in O(n).
For example, given
设得到数组A[],需得到B[i] = A[0]*A[1]...*A[i-1]*A[i+1]*....A[n-1],令C[i] = A[0]*A[1]...*A[i-1],D[i] = A[i+1]*....A[n-1],可得C[i] = C[i-1]*A[i-1],D[i] = D[i+1]*A[i+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].
设得到数组A[],需得到B[i] = A[0]*A[1]...*A[i-1]*A[i+1]*....A[n-1],令C[i] = A[0]*A[1]...*A[i-1],D[i] = A[i+1]*....A[n-1],可得C[i] = C[i-1]*A[i-1],D[i] = D[i+1]*A[i+1],
class Solution { public: vector<int> productExceptSelf(vector<int>& nums) { int n = nums.size(); vector<int> res(n,1); res[n-1]=1; for(int i = n-2;i>=0;i--) { res[i] = res[i+1] * nums[i+1]; } int left = 1; for(int i=0; i<n; i++) { res[i] *= left; left *= nums[i]; } return res; } };
相关文章推荐
- CableModem原理
- 安装ubuntu已将该虚拟机配置 为使用64位客户机操作系统错误
- [027]八大排序算法详解——归并排序
- Class create, device create, device create file
- CocoaPods中Podfile详解
- mac 安装 Android Studio
- 【转】DBMS_PARALLEL_EXECUTE
- vs+opencv中findcontours崩溃的问题
- Git学习(2)Git 安装
- Android Paint详解
- C++作业4
- Android程序开发之UIScrollerView里有两个tableView
- 一个很city的问题
- c++第三次作业
- cocos中使用tinyxml2遇到的一个小问题
- 二维数组赋值的问题
- Oracle创建用户、表(1)
- Set Matrix Zeroes
- Oracle创建用户、表(1)
- 移动金融应用面临的风险及应对