diff --git a/product-of-array-except-self/ymir0804.java b/product-of-array-except-self/ymir0804.java new file mode 100644 index 0000000000..25dad13a54 --- /dev/null +++ b/product-of-array-except-self/ymir0804.java @@ -0,0 +1,16 @@ +class Solution { + public int[] productExceptSelf(int[] nums) { + int [] result = new int [nums.length]; + result[0] = 1; + for (int i = 1; i < nums.length; i++) { + result[i] = result[i - 1] * nums[i - 1]; + } + int suffixProduct = 1; + for (int i = nums.length - 1; i >= 0; i--) { + result[i] *= suffixProduct; + suffixProduct *= nums[i]; + } + return result; + } +} +