Q:已知一个数组,可能有重复元素,求所有的子集,要求不能重复。...], [1], [1, 2], [1, 2, 2], [1, 2, 2, 2], [2], [2, 2], [2, 2, 2]]
需要注意,[2, 1, 2] 和 [1, 2, 2] 是重复的子集...取下标1,2,3, 是【1,2,2】
这三组子集,均代表一种情况,故只能出现一次,怎么解决?...思路:
对于原数组【2,1,2,2】,将其排序后为【1,2,2,2】
此时无论怎么取下标,只能出现【1,2,2】这样的情况
会出现三次这种情况?怎么解决?...,需要将数组元素item插入集合中
sort(nums.begin(), nums.end());//先将数组排序
result.push_back(item);//结果中加入空集