当前位置:   article > 正文

Leetcode 238. 除自身以外数组的乘积

Leetcode 238. 除自身以外数组的乘积

238. 除自身以外数组的乘积 - 力扣(LeetCode)

  1. class Solution {
  2. /**
  3. 2024.6.17
  4. 思路还是比较巧妙,遍历元素2遍,从左往右,算每个元素左边的乘积,不断累乘,直接赋值;
  5. 再从右往左,右边元素乘积再乘以上一遍左边元素乘积,就得到结果了
  6. */
  7. public int[] productExceptSelf(int[] nums) {
  8. int[] res=new int[nums.length];
  9. int leftN=1;
  10. int rightN=1;
  11. for(int i=0;i<nums.length;i++){
  12. res[i]=leftN;
  13. // 从左往右,第一遍一直累乘
  14. leftN*=nums[i];
  15. }
  16. for(int i=nums.length-1;i>=0;i--){
  17. res[i]=res[i]*rightN;
  18. rightN*=nums[i];
  19. }
  20. return res;
  21. }
  22. }

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号