mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-10 20:40:39 +08:00
Merge pull request #1181 from xiaofei-2020/back08
添加(0040.组合总和II.md):增加typescript版本
This commit is contained in:
@ -532,6 +532,7 @@ var combinationSum2 = function(candidates, target) {
|
|||||||
};
|
};
|
||||||
```
|
```
|
||||||
**使用used去重**
|
**使用used去重**
|
||||||
|
|
||||||
```js
|
```js
|
||||||
var combinationSum2 = function(candidates, target) {
|
var combinationSum2 = function(candidates, target) {
|
||||||
let res = [];
|
let res = [];
|
||||||
@ -562,6 +563,37 @@ var combinationSum2 = function(candidates, target) {
|
|||||||
};
|
};
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## TypeScript
|
||||||
|
|
||||||
|
```typescript
|
||||||
|
function combinationSum2(candidates: number[], target: number): number[][] {
|
||||||
|
candidates.sort((a, b) => a - b);
|
||||||
|
const resArr: number[][] = [];
|
||||||
|
function backTracking(
|
||||||
|
candidates: number[], target: number,
|
||||||
|
curSum: number, startIndex: number, route: number[]
|
||||||
|
) {
|
||||||
|
if (curSum > target) return;
|
||||||
|
if (curSum === target) {
|
||||||
|
resArr.push(route.slice());
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
for (let i = startIndex, length = candidates.length; i < length; i++) {
|
||||||
|
if (i > startIndex && candidates[i] === candidates[i - 1]) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
let tempVal: number = candidates[i];
|
||||||
|
route.push(tempVal);
|
||||||
|
backTracking(candidates, target, curSum + tempVal, i + 1, route);
|
||||||
|
route.pop();
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
backTracking(candidates, target, 0, 0, []);
|
||||||
|
return resArr;
|
||||||
|
};
|
||||||
|
```
|
||||||
|
|
||||||
## C
|
## C
|
||||||
|
|
||||||
```c
|
```c
|
||||||
|
Reference in New Issue
Block a user