山东天成水利建设有限公司网站,中国污水处理工程网,wordpress中的feed,vi设计对企业的意义给定长度为 n 的整数数组 nums#xff0c;其中 n 1#xff0c;返回输出数组 output #xff0c;其中 output[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积。
示例:
输入: [1,2,3,4] 输出: [24,12,8,6] 说明: 请不要使用除法#xff0c;且在 O(n) 时间复杂度内完…给定长度为 n 的整数数组 nums其中 n 1返回输出数组 output 其中 output[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积。
示例:
输入: [1,2,3,4] 输出: [24,12,8,6] 说明: 请不要使用除法且在 O(n) 时间复杂度内完成此题。
进阶 你可以在常数空间复杂度内完成这个题目吗 出于对空间复杂度分析的目的输出数组不被视为额外空间。 思路这个数左边的连续乘积和这个数右边的连续乘积的积就是结果
提交的代码
class Solution { public int[] productExceptSelf(int[] nums) { int dp[] new int[nums.length]; dp[0]1; for(int i1;inums.length;i) { dp[i]dp[i-1]*nums[i-1]; } int t1; for(int inums.length-2;i0;i--) { t t* nums[i1]; dp[i]dp[i]*t; } return dp; }
}