var subsetsWithDup = function(nums) {
let arr=[]
let p=[]
//去重需要排序
nums.sort()
const dd=function(index){
//遍历整棵树,不需要中止条件
arr.push([...p])
for(let i=index;i<nums.length;i++){
//同一层重复的元素剪枝
if(i>index&&nums[i]==nums[i-1]){
continue
}
p.push(nums[i])
dd(i+1)
p.pop()
}
}
dd(0)
return arr
};