mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-12 05:20:59 +08:00
update 46.全排列 JavaScript版本
This commit is contained in:
@ -244,31 +244,35 @@ func backtrack(nums,pathNums []int,used []bool){
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
Javascript:
|
Javascript:
|
||||||
|
|
||||||
```javascript
|
```js
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param {number[]} nums
|
||||||
|
* @return {number[][]}
|
||||||
|
*/
|
||||||
var permute = function(nums) {
|
var permute = function(nums) {
|
||||||
let result = []
|
const res = [], path = [];
|
||||||
let path = []
|
backtracking(nums, nums.length, []);
|
||||||
function backtracing(used) {
|
return res;
|
||||||
if(path.length === nums.length) {
|
|
||||||
result.push(path.slice(0))
|
function backtracking(n, k, used) {
|
||||||
return
|
if(path.length === k) {
|
||||||
|
res.push(Array.from(path));
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
for(let i = 0; i < nums.length; i++) {
|
for (let i = 0; i < k; i++ ) {
|
||||||
if(used[nums[i]]) {
|
if(used[i]) continue;
|
||||||
continue
|
path.push(n[i]);
|
||||||
}
|
used[i] = true; // 同支
|
||||||
used[nums[i]] = true
|
backtracking(n, k, used);
|
||||||
path.push(nums[i])
|
path.pop();
|
||||||
backtracing(used)
|
used[i] = false;
|
||||||
path.pop()
|
|
||||||
used[nums[i]] = false
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
backtracing([])
|
|
||||||
return result
|
|
||||||
};
|
};
|
||||||
|
|
||||||
```
|
```
|
||||||
|
Reference in New Issue
Block a user