leetcode---Product of Array Except Self
来源:互联网 发布:软件测试的思路 编辑:程序博客网 时间:2024/04/27 05:07
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.)
class Solution {public: vector<int> productExceptSelf(vector<int>& nums) { int n = nums.size(); vector<int> result(n, 0); if(n == 0) return result; int all = 1; //nums中所有数字的乘积 int cnt = 0; //nums中0的个数 int index = -1; //nums中哪个数字是0 for(int i=0; i<n; i++) { if(nums[i] != 0) { all *= nums[i]; } else { cnt++; index = i; if(cnt == 2) return result; } } if(cnt == 2) //nums中有2个0 { return result; } else if(cnt == 1) //nums中有1个0 { result[index] = all; return result; } //正常情况 for(int i=0; i<n; i++) { if(i != index) result[i] = all / nums[i]; } return result; }};
0 0
- [leetcode][array] Product of Array Except Self
- 【LeetCode】237 Product of Array Except Self
- #leetcode#Product of Array Except Self
- leetcode 238: Product of Array Except Self
- [leetcode] 238.Product of Array Except Self
- [leetcode] Product of Array Except Self
- LeetCode Product of Array Except Self
- leetCode(43):Product of Array Except Self
- LeetCode Product of Array Except Self
- 【leetcode】Product of Array Except Self
- 【leetcode】Product of Array Except Self
- leetcode: Product of Array Except Self
- [leetcode] Product of Array Except Self
- [LeetCode] Product of Array Except Self
- Leetcode: Product of Array Except Self
- LeetCode 238: Product of Array Except Self
- LeetCode-Product of Array Except Self
- Leetcode #238 Product of Array Except Self
- image scale和size的关系与SDScaledImageForKey
- 设计模式学习笔记---观察者模式Observer pattern(Java版)
- 字符串匹配
- 用Criteria进行模糊查询实现简单的搜索功能
- CodeForces
- leetcode---Product of Array Except Self
- 向上转型和向下转型
- 有向图的欧拉道路 UVA
- Leetcode题解:513. Find Bottom Left Tree Value
- RHEL6.5 LVM硬盘管理
- leetcode508
- 1091. Acute Stroke (30)[bfs广度优先搜索+种子填充]
- 64位MinGW和MSYS的安装
- java集合