添加(0053.最大子序和.md):增加typescript版本

This commit is contained in:
Steve2020
2022-04-06 16:23:34 +08:00
parent 5c3ab04b6e
commit e4f34f3e47

View File

@ -211,7 +211,7 @@ func maxSubArray(nums []int) int {
return maxSum
}
```
### Javascript:
```Javascript
var maxSubArray = function(nums) {
@ -230,6 +230,41 @@ var maxSubArray = function(nums) {
};
```
### TypeScript
**贪心**
```typescript
function maxSubArray(nums: number[]): number {
let curSum: number = 0;
let resMax: number = -Infinity;
for (let i = 0, length = nums.length; i < length; i++) {
curSum += nums[i];
resMax = Math.max(curSum, resMax);
if (curSum < 0) curSum = 0;
}
return resMax;
};
```
**动态规划**
```typescript
// 动态规划
function maxSubArray(nums: number[]): number {
const length = nums.length;
if (length === 0) return 0;
const dp: number[] = [];
dp[0] = nums[0];
let resMax: number = nums[0];
for (let i = 1; i < length; i++) {
dp[i] = Math.max(dp[i - 1] + nums[i], nums[i]);
resMax = Math.max(resMax, dp[i]);
}
return resMax;
};
```
-----------------------