Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 09ac56f

Browse files
committed
add 04
1 parent 8651bdb commit 09ac56f

File tree

1 file changed

+47
-0
lines changed
  • leetcode刷题/note/6月刷题

1 file changed

+47
-0
lines changed

‎leetcode刷题/note/6月刷题/04.md

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
# No.238 除自身以外数组的乘积
2+
3+
给你一个长度为 n 的整数数组 nums,其中 n > 1,返回输出数组 output ,其中 output[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积。
4+
5+
## 实例
6+
7+
```javascript
8+
输入: [1,2,3,4]
9+
输出: [24,12,8,6]
10+
```
11+
12+
## 解题思路
13+
14+
分别左右乘积。
15+
16+
举个简单的例子:
17+
```
18+
[1,2,3,4]
19+
---
20+
左乘的数组:L = [1,2,3,12];
21+
有乘的数组:R = [24,12,4,1];
22+
将 L[i] * R[i] 记得到答案
23+
```
24+
25+
代码如下:
26+
27+
```javascript
28+
/**
29+
* @param {number[]} nums
30+
* @return {number[]}
31+
*/
32+
var productExceptSelf = function(nums) {
33+
let L = [1];
34+
let R = [1];
35+
36+
// 别左右乘
37+
for (let i = 0, n = nums.length-1; i < n; i++) {
38+
L.push(L[L.length-1]*nums[i]);
39+
R.unshift(R[0]*nums[n-i]);
40+
}
41+
// 两边乘积
42+
for (let i = 0; i < L.length; i++) {
43+
L[i] = L[i] * R[i];
44+
}
45+
return L;
46+
};
47+
```

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /