最后更新于3年前
这有帮助吗?
给定一组不含重复元素的整数数组 nums,返回该数组所有可能的子集(幂集)。
定义res数组存储结果
每个子集为状态变量,集合的元素个数为条件变量
子集的元素数量小于等于集合的元素数量为限制条件,满足条件时添加到结果数组,否则回退到上一步
下一层搜索的集合需要去掉已添加到状态变量中的元素
var subsets = function(nums) { let res = []; let n = nums.length; function back(path,i){ if(i <= n){ res.push(path); } for(let j = i;j < n;j++){ path.push(nums[j]); back(path.slice(0),j+1); path.pop(); } } back([],0); return res; };