Skip to content

Commit 0f3f7d6

Browse files
authored
Create permutations.js
Create permutations.js
1 parent 9955d3d commit 0f3f7d6

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed

JavaScript/permutations.js

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
/**
2+
* @param {number[]} nums
3+
* @return {number[][]}
4+
*/
5+
6+
var permute = function(nums) {
7+
8+
var res = [];
9+
10+
dfs(res, [], nums);
11+
12+
return res;
13+
14+
};
15+
16+
var dfs = function (res, arr, nums) {
17+
18+
var len = nums.length;
19+
var tmp1 = null;
20+
var tmp2 = null;
21+
22+
if (!len) return res.push(arr);
23+
24+
for (var i = 0; i < len; i++) {
25+
tmp1 = Array.from(arr);
26+
tmp1.push(nums[i]);
27+
28+
tmp2 = Array.from(nums);
29+
tmp2.splice(i, 1);
30+
31+
dfs(res, tmp1, tmp2);
32+
33+
}
34+
35+
};

0 commit comments

Comments
 (0)