摘要:给定一个没有重复数字的序列,返回其所有可能的全排列。示例输入输出参考
给定一个没有重复数字的序列,返回其所有可能的全排列。
示例:
输入: [1,2,3] 输出: [ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1] ]
参考:
/**
* @param {number[]} nums
* @return {number[][]}
*/
var permute = function (nums) {
result = []
nums.sort(function (a, b) {
return a - b
})
find(nums, [])
return result
};
let result = []
function find(nums, templateList) {
if (nums.length == 0) {
result.push(templateList.slice())
}
for (let i = 0; i < nums.length; i++) {
templateList.push(nums[i])
let copy = nums.slice()
copy.splice(i, 1)
find(copy, templateList)
templateList.pop()
}
}
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/104727.html
摘要:题目地址题目描述给定一个没有重复数字的序列,返回其所有可能的全排列。 题目地址:https://leetcode-cn.com/probl...题目描述:给定一个没有重复数字的序列,返回其所有可能的全排列。 示例: 输入: [1,2,3]输出:[ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1]]解答:利用递归,我们可...
摘要:例如有如下的全排列想法这道题是用回溯法的思想解决的。回溯法在包含问题的所有解的解空间树中,按照深度优先的策略,从根节点出发深度优先搜索,搜索到某个点的时候,先判断该节点是否包含问题的解,如果包含就继续探索,否则就逐层向根节点回溯。 题目详情 Given a collection of distinct numbers, return all possible permutations....
摘要:题目给定一组不含重复元素的整数数组,返回该数组所有可能的子集幂集。说明解集不能包含重复的子集。示例输入输出题解全排列,部分排列这些问题都是回溯的题目。这个题目每个状态都是解,包括空也是解,所以直接都加进去就好。 题目 给定一组不含重复元素的整数数组 nums,返回该数组所有可能的子集(幂集)。 说明:解集不能包含重复的子集。 示例: 输入: nums = [1,2,3] 输出: [ ...
摘要:题目给定一组不含重复元素的整数数组,返回该数组所有可能的子集幂集。说明解集不能包含重复的子集。示例输入输出题解全排列,部分排列这些问题都是回溯的题目。这个题目每个状态都是解,包括空也是解,所以直接都加进去就好。 题目 给定一组不含重复元素的整数数组 nums,返回该数组所有可能的子集(幂集)。 说明:解集不能包含重复的子集。 示例: 输入: nums = [1,2,3] 输出: [ ...
阅读 4115·2021-10-12 10:11
阅读 3833·2021-09-13 10:27
阅读 2767·2019-08-30 15:53
阅读 2164·2019-08-29 18:33
阅读 2396·2019-08-29 14:03
阅读 1163·2019-08-29 13:27
阅读 3531·2019-08-28 18:07
阅读 939·2019-08-26 13:23