Given an array nums of distinct integers, return all the possible permutations. You can return the answer in any order.
var permute = (nums) => {
const result = [];
const current = [];
backtracking(nums, result, current);
console.log(result);
};
const backtracking = (nums, result, current) => {
if (nums.length == current.length) {
result.push(Array.from(current));
return;
}
for (let i = 0; i < nums.length; i++) {
if (current.includes(nums[i])) continue;
current.push(nums[i]);
backtracking(nums, result, current);
current.pop();
}
}
permute([1, 2, 3]);
I found that solution is very popular and helpful: https://youtu.be/UvSPsz0jTQ4