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

[pull] master from youngyangyang04:master #3

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weโ€™ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
pull merged 26 commits into AlgorithmAndLeetCode:master from youngyangyang04:master
May 27, 2022
Merged
Show file tree
Hide file tree
Changes from 7 commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
21475ad
ไฟฎๆญฃไบ†ๅ…ถไธญไธ€ไธช้”™ๅˆซๅญ—
languagege May 9, 2022
7519826
Update 0019.ๅˆ ้™ค้“พ่กจ็š„ๅ€’ๆ•ฐ็ฌฌNไธช่Š‚็‚น.md
qingfengpiaoa May 10, 2022
c62d518
fix bug
FizzerYu May 10, 2022
d92aa2c
Add 0112.่ทฏๅพ„ๆ€ปๅ’Œ.md C่ฏญ่จ€่งฃๆณ•
KingArthur0205 May 10, 2022
cc2c2ad
ๆทปๅŠ  0977.ๆœ‰ๅบๆ•ฐ็ป„็š„ๅนณๆ–น.md Scala็‰ˆๆœฌ
wzqwtt May 11, 2022
842c042
ๆทปๅŠ (่ƒŒๅŒ…้—ฎ้ข˜็†่ฎบๅŸบ็ก€ๅคš้‡่ƒŒๅŒ….md):ๅขžๅŠ typescript็‰ˆๆœฌ
xiaofei-2020 May 11, 2022
871d96a
ๆทปๅŠ  0209.้•ฟๅบฆๆœ€ๅฐ็š„ๅญๆ•ฐ็ป„.md Scala็‰ˆๆœฌ
wzqwtt May 11, 2022
cb2fea6
ๆทปๅŠ  0113.่ทฏๅพ„ๆ€ปๅ’ŒII C่ฏญ่จ€่งฃๆณ•
KingArthur0205 May 11, 2022
c363e9d
ๆทปๅŠ (0198.ๆ‰“ๅฎถๅŠซ่ˆ.md):ๅขžๅŠ typescript็‰ˆๆœฌ
xiaofei-2020 May 11, 2022
2964855
ๆทปๅŠ (0213.ๆ‰“ๅฎถๅŠซ่ˆII.md):ๅขžๅŠ typescript็‰ˆๆœฌ
xiaofei-2020 May 11, 2022
1e9bb56
Merge branch 'youngyangyang04:master' into master
KingArthur0205 May 14, 2022
5da6c06
ๆทปๅŠ  ่ƒŒๅŒ…็†่ฎบ่‚Œ้†‡01่ƒŒๅŒ… C่ฏญ่จ€็‰ˆๆœฌ
KingArthur0205 May 14, 2022
4defb3d
Merge branch 'master' of https://github.com/KingArthur0205/leetcode-m...
KingArthur0205 May 14, 2022
a20ac9d
Merge branch 'youngyangyang04:master' into master
KingArthur0205 May 15, 2022
aa22b80
ๆทปๅŠ  ่ƒŒๅŒ…็†่ฎบๅŸบ็ก€01-2.mc C่ฏญ่จ€็‰ˆๆœฌ
KingArthur0205 May 15, 2022
d15c4af
Merge branch 'master' of https://github.com/KingArthur0205/leetcode-m...
KingArthur0205 May 15, 2022
19abe18
ๆทปๅŠ  0416.ๅˆ†ๅ‰ฒ็ญ‰ๅ’Œๅญ้›†.md C่ฏญ่จ€็‰ˆๆœฌ
KingArthur0205 May 15, 2022
4f94d8a
Merge pull request #1296 from languagege/master
youngyangyang04 May 27, 2022
b4a40a2
Merge pull request #1298 from qingfengpiaoa/master
youngyangyang04 May 27, 2022
5719c00
Merge pull request #1301 from FizzerYu/patch-1
youngyangyang04 May 27, 2022
45a8a6b
Merge branch 'master' into master
youngyangyang04 May 27, 2022
309643e
Merge pull request #1302 from KingArthur0205/master
youngyangyang04 May 27, 2022
7684a1c
Merge pull request #1304 from xiaofei-2020/dp27
youngyangyang04 May 27, 2022
f115be0
Merge pull request #1305 from ZongqinWang/patch01
youngyangyang04 May 27, 2022
bb32a41
Merge pull request #1306 from xiaofei-2020/dp29
youngyangyang04 May 27, 2022
0e3a1bc
Merge pull request #1307 from xiaofei-2020/dp30
youngyangyang04 May 27, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@

ๅˆ†ไธบๅฆ‚ไธ‹ๅ‡ ๆญฅ:

* ้ฆ–ๅ…ˆ่ฟ™้‡Œๆˆ‘ๆŽจ่ๅคงๅฎถไฝฟ็”จ่™šๆ‹Ÿๅคด็ป“็‚น,่ฟ™ๆ ทๆ–น้ขๅค„็†ๅˆ ้™คๅฎž้™…ๅคด็ป“็‚น็š„้€ป่พ‘,ๅฆ‚ๆžœ่™šๆ‹Ÿๅคด็ป“็‚นไธๆธ…ๆฅš,ๅฏไปฅ็œ‹่ฟ™็ฏ‡: [้“พ่กจ:ๅฌ่ฏด็”จ่™šๆ‹Ÿๅคด่Š‚็‚นไผšๆ–นไพฟๅพˆๅคš?](https://programmercarl.com/0203.็งป้™ค้“พ่กจๅ…ƒ็ด .html)
* ้ฆ–ๅ…ˆ่ฟ™้‡Œๆˆ‘ๆŽจ่ๅคงๅฎถไฝฟ็”จ่™šๆ‹Ÿๅคด็ป“็‚น,่ฟ™ๆ ทๆ–นไพฟๅค„็†ๅˆ ้™คๅฎž้™…ๅคด็ป“็‚น็š„้€ป่พ‘,ๅฆ‚ๆžœ่™šๆ‹Ÿๅคด็ป“็‚นไธๆธ…ๆฅš,ๅฏไปฅ็œ‹่ฟ™็ฏ‡: [้“พ่กจ:ๅฌ่ฏด็”จ่™šๆ‹Ÿๅคด่Š‚็‚นไผšๆ–นไพฟๅพˆๅคš?](https://programmercarl.com/0203.็งป้™ค้“พ่กจๅ…ƒ็ด .html)

* ๅฎšไน‰fastๆŒ‡้’ˆๅ’ŒslowๆŒ‡้’ˆ,ๅˆๅง‹ๅ€ผไธบ่™šๆ‹Ÿๅคด็ป“็‚น,ๅฆ‚ๅ›พ:

Expand Down
2 changes: 1 addition & 1 deletion problems/0027.็งป้™คๅ…ƒ็ด .md
View file Open in desktop
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ public:

**ๅŒๆŒ‡้’ˆๆณ•(ๅฟซๆ…ขๆŒ‡้’ˆๆณ•)ๅœจๆ•ฐ็ป„ๅ’Œ้“พ่กจ็š„ๆ“ไฝœไธญๆ˜ฏ้žๅธธๅธธ่ง็š„,ๅพˆๅคš่€ƒๅฏŸๆ•ฐ็ป„ใ€้“พ่กจใ€ๅญ—็ฌฆไธฒ็ญ‰ๆ“ไฝœ็š„้ข่ฏ•้ข˜,้ƒฝไฝฟ็”จๅŒๆŒ‡้’ˆๆณ•ใ€‚**

ๅŽๅบ้ƒฝไผšไธ€ไธ€ไป‹็ปๅˆฐ,ๆœฌ้ข˜ไปฃ็ ๅฆ‚ไธ‹:
ๅŽ็ปญ้ƒฝไผšไธ€ไธ€ไป‹็ปๅˆฐ,ๆœฌ้ข˜ไปฃ็ ๅฆ‚ไธ‹:

```CPP
// ๆ—ถ้—ดๅคๆ‚ๅบฆ:O(n)
Expand Down
57 changes: 57 additions & 0 deletions problems/0416.ๅˆ†ๅ‰ฒ็ญ‰ๅ’Œๅญ้›†.md
View file Open in desktop
Original file line number Diff line number Diff line change
Expand Up @@ -416,6 +416,7 @@ var canPartition = function(nums) {
};
```


C:
ไบŒ็ปดdp:
```c
Expand Down Expand Up @@ -517,6 +518,62 @@ bool canPartition(int* nums, int numsSize){
}
```

TypeScript:

> ไธ€็ปดๆ•ฐ็ป„,็ฎ€ๆด

```typescript
function canPartition(nums: number[]): boolean {
const sum: number = nums.reduce((pre, cur) => pre + cur);
if (sum % 2 === 1) return false;
const bagSize: number = sum / 2;
const goodsNum: number = nums.length;
const dp: number[] = new Array(bagSize + 1).fill(0);
for (let i = 0; i < goodsNum; i++) {
for (let j = bagSize; j >= nums[i]; j--) {
dp[j] = Math.max(dp[j], dp[j - nums[i]] + nums[i]);
}
}
return dp[bagSize] === bagSize;
};
```

> ไบŒ็ปดๆ•ฐ็ป„,ๆ˜“ๆ‡‚

```typescript
function canPartition(nums: number[]): boolean {
/**
weightArr = nums;
valueArr = nums;
bagSize = sum / 2; (sumไธบnumsๅ„ๅ…ƒ็ด ๆ€ปๅ’Œ);
ๆŒ‰็…ง0-1่ƒŒๅŒ…ๅค„็†
*/
const sum: number = nums.reduce((pre, cur) => pre + cur);
if (sum % 2 === 1) return false;
const bagSize: number = sum / 2;
const weightArr: number[] = nums;
const valueArr: number[] = nums;
const goodsNum: number = weightArr.length;
const dp: number[][] = new Array(goodsNum)
.fill(0)
.map(_ => new Array(bagSize + 1).fill(0));
for (let i = weightArr[0]; i <= bagSize; i++) {
dp[0][i] = valueArr[0];
}
for (let i = 1; i < goodsNum; i++) {
for (let j = 0; j <= bagSize; j++) {
if (j < weightArr[i]) {
dp[i][j] = dp[i - 1][j];
} else {
dp[i][j] = Math.max(dp[i - 1][j], dp[i - 1][j - weightArr[i]] + valueArr[i]);
}
}
}
return dp[goodsNum - 1][bagSize] === bagSize;
};
```




-----------------------
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -279,7 +279,7 @@ class Solution:
root.right = self.insertIntoBST(root.right, val)

# ่ฟ”ๅ›žๆ›ดๆ–ฐๅŽ็š„ไปฅๅฝ“ๅ‰rootไธบๆ น่Š‚็‚น็š„ๆ–ฐๆ ‘
return roo
return root
```

**้€’ๅฝ’ๆณ•** - ๆ— ่ฟ”ๅ›žๅ€ผ
Expand Down
View file Open in desktop
Original file line number Diff line number Diff line change
Expand Up @@ -432,6 +432,7 @@ function test () {
test();
```


### C
```c
#include <stdio.h>
Expand Down Expand Up @@ -478,5 +479,48 @@ int main(int argc, char* argv[]) {
}
```


### TypeScript

```typescript
function testWeightBagProblem(
weight: number[],
value: number[],
size: number
): number {
/**
* dp[i][j]: ๅ‰iไธช็‰ฉๅ“,่ƒŒๅŒ…ๅฎน้‡ไธบj,่ƒฝ่Žทๅพ—็š„ๆœ€ๅคงไปทๅ€ผ
* dp[0][*]: u=weight[0],uไน‹ๅ‰ไธบ0,uไน‹ๅŽ(ๅซu)ไธบvalue[0]
* dp[*][0]: 0
* ...
* dp[i][j]: max(dp[i-1][j], dp[i-1][j-weight[i]]+value[i]);
*/
const goodsNum: number = weight.length;
const dp: number[][] = new Array(goodsNum)
.fill(0)
.map((_) => new Array(size + 1).fill(0));
for (let i = weight[0]; i <= size; i++) {
dp[0][i] = value[0];
}
for (let i = 1; i < goodsNum; i++) {
for (let j = 1; j <= size; j++) {
if (j < weight[i]) {
dp[i][j] = dp[i - 1][j];
} else {
dp[i][j] = Math.max(dp[i - 1][j], dp[i - 1][j - weight[i]] + value[i]);
}
}
}
return dp[goodsNum - 1][size];
}
// test
const weight = [1, 3, 4];
const value = [15, 20, 30];
const size = 4;
console.log(testWeightBagProblem(weight, value, size));
```



-----------------------
<div align="center"><img src=https://code-thinking.cdn.bcebos.com/pics/01ไบŒ็ปด็ ไธ€.jpg width=500> </img></div>
View file Open in desktop
Original file line number Diff line number Diff line change
Expand Up @@ -351,6 +351,31 @@ int main(int argc, char** argv) {
}
```

### TypeScript

```typescript
function testWeightBagProblem(
weight: number[],
value: number[],
size: number
): number {
const goodsNum: number = weight.length;
const dp: number[] = new Array(size + 1).fill(0);
for (let i = 0; i < goodsNum; i++) {
for (let j = size; j >= weight[i]; j--) {
dp[j] = Math.max(dp[j], dp[j - weight[i]] + value[i]);
}
}
return dp[size];
}
const weight = [1, 3, 4];
const value = [15, 20, 30];
const size = 4;
console.log(testWeightBagProblem(weight, value, size));

```



-----------------------
<div align="center"><img src=https://code-thinking.cdn.bcebos.com/pics/01ไบŒ็ปด็ ไธ€.jpg width=500> </img></div>

AltStyle ใซใ‚ˆใฃใฆๅค‰ๆ›ใ•ใ‚ŒใŸใƒšใƒผใ‚ธ (->ใ‚ชใƒชใ‚ธใƒŠใƒซ) /