给定长度为 n 的整数数组 nums,其中 n > 1,返回输出数组 output ,其中 output[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积。

示例:

输入: [1,2,3,4] 输出: [24,12,8,6]

说明: 请不要使用除法,且在 O(n) 时间复杂度内完成此题。

进阶:

你可以在常数空间复杂度内完成这个题目吗?( 出于对空间复杂度分析的目的,输出数组不被视为额外空间。)

temp用来记录从0到i - 1个元素的乘积

output[i]表示从i到最后一个元素的乘积

class Solution {
public:
vector<int> productExceptSelf(vector<int>& nums)
{
int len = nums.size();
vector<int> output(len, 0);
vector<int> save(len, 0);
int temp = 0;
for(int i = len - 1; i >= 0; i--)
{
if(i == len - 1)
{
temp = nums[len - 1];
save[i] = temp;
}
else
{
temp *= nums[i];
save[i] = temp;
}
}
temp = 1;
for(int i = 0; i < len - 1; i++)
{
output[i] = temp * save[i + 1];
temp *= nums[i];
}
output[len - 1] = temp;
return output;
}
};

最新文章

  1. 百度 flash html5自切换 多文件异步上传控件webuploader基本用法
  2. 批处理学习:for语句详解【经典】
  3. Backbone☞View中的events...click事件失效
  4. vs 2005 使用 boost regex
  5. JNI日志调试LOG和中文乱码
  6. java卡与native卡的区别
  7. android125 zhihuibeijing 缓存
  8. NSOJ Minimum Transport Cost
  9. MVC验证13-2个属性至少输入一项
  10. Java学习记录 : 画板的实现
  11. docker容器自动化部署(一)
  12. SonarQube(代码质量管理)环境搭建
  13. /bin/bash^M: bad interpreter: No such file or directory 解决办法
  14. Python_部分内置函数
  15. python之面向对象的程序设计
  16. unity3d IL2CPP for android
  17. es6箭头函数内部判断
  18. Icons - Material Design各种ICON图标大全
  19. 《剑指offer》第六十二题(圆圈中最后剩下的数字)
  20. Jmeter 接口测试知识梳理——持续集成篇

热门文章

  1. 本地项目通过 git 同步到 github
  2. python常用包及功能介绍
  3. 2019 Multi-University Training Contest 7 Kejin Player Final Exam
  4. linux /bin/find 报错:paths must precede expression 及find应用
  5. [模拟退火][UVA10228] A Star not a Tree?
  6. 开机自动调用.bat文件且浏览器全屏展示
  7. 在github上怎样克隆vue项目及运行
  8. 你必须知道的.NET Day1
  9. 廖雪峰Java12maven基础-2maven进阶-1使用插件
  10. Oracle使用语句块之循环插入数据