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 266bf4e

Browse files
Merge pull request youngyangyang04#1025 from xiaofei-2020/hash8
添加(0015.三数之和.md):增加typescript版本
2 parents 26bb47e + 2ea72e3 commit 266bf4e

File tree

1 file changed

+36
-0
lines changed

1 file changed

+36
-0
lines changed

‎problems/0015.三数之和.md‎

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -332,7 +332,43 @@ var threeSum = function(nums) {
332332
return res;
333333
};
334334
```
335+
TypeScript:
335336

337+
```typescript
338+
function threeSum(nums: number[]): number[][] {
339+
nums.sort((a, b) => a - b);
340+
let length = nums.length;
341+
let left: number = 0,
342+
right: number = length - 1;
343+
let resArr: number[][] = [];
344+
for (let i = 0; i < length; i++) {
345+
if (i > 0 && nums[i] === nums[i - 1]) {
346+
continue;
347+
}
348+
left = i + 1;
349+
right = length - 1;
350+
while (left < right) {
351+
let total: number = nums[i] + nums[left] + nums[right];
352+
if (total === 0) {
353+
resArr.push([nums[i], nums[left], nums[right]]);
354+
left++;
355+
right--;
356+
while (nums[right] === nums[right + 1]) {
357+
right--;
358+
}
359+
while (nums[left] === nums[left - 1]) {
360+
left++;
361+
}
362+
} else if (total < 0) {
363+
left++;
364+
} else {
365+
right--;
366+
}
367+
}
368+
}
369+
return resArr;
370+
};
371+
```
336372

337373
ruby:
338374
```ruby

0 commit comments

Comments
(0)

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