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 04e2d27

Browse files
Merge pull request youngyangyang04#1387 from Jerry-306/patch-59
0416.分割等和子集 新增 typescript 解法代码
2 parents a46d696 + fa3db0e commit 04e2d27

File tree

1 file changed

+20
-1
lines changed

1 file changed

+20
-1
lines changed

‎problems/0416.分割等和子集.md

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -417,6 +417,26 @@ var canPartition = function(nums) {
417417
```
418418

419419

420+
TypeScript:
421+
422+
```ts
423+
function canPartition(nums: number[]): boolean {
424+
const sum: number = nums.reduce((a: number, b: number): number => a + b);
425+
if (sum % 2 === 1) return false;
426+
const target: number = sum / 2;
427+
// dp[j]表示容量(总数和)为j的背包所能装下的数(下标[0, i]之间任意取)的总和(<= 容量)的最大值
428+
const dp: number[] = new Array(target + 1).fill(0);
429+
const n: number = nums.length;
430+
for (let i: number = 0; i < n; i++) {
431+
for (let j: number = target; j >= nums[i]; j--) {
432+
dp[j] = Math.max(dp[j], dp[j - nums[i]] + nums[i]);
433+
}
434+
}
435+
return dp[target] === target;
436+
};
437+
```
438+
439+
420440
C:
421441
二维dp:
422442
```c
@@ -575,6 +595,5 @@ function canPartition(nums: number[]): boolean {
575595

576596

577597

578-
579598
-----------------------
580599
<div align="center"><img src=https://code-thinking.cdn.bcebos.com/pics/01二维码一.jpg width=500> </img></div>

0 commit comments

Comments
(0)

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