class Solution {
public:
vector<int> productExceptSelf(vector<int>& nums) {
int n = nums.size();
vector<int> ret(n, 1);
int rproduct = 1;
for (int i = 0; i < n; ++i) {
ret[i] *= rproduct;
rproduct *= nums[i];
}
rproduct = 1;
for (int i = n - 1; i >= 0; --i) {
ret[i] *= rproduct;
rproduct *= nums[i];
}
return ret;
}
};

本文介绍了一种高效算法,用于求解给定数组中每个元素等于数组中其他所有元素的乘积的问题。该算法避免了使用除法操作,并通过两次遍历实现了O(n)的时间复杂度。
1203

被折叠的 条评论
为什么被折叠?



