78. Subsets

问题

给定一个包含独特整数的数组 nums,返回它所有的子集。

注意:子集中不能含有重复的集合。

例子:

Input: nums = [1,2,3]
Output:
[
  [3],
  [1],
  [2],
  [1,2,3],
  [1,3],
  [2,3],
  [1,2],
  []
]

思路

这个题目是第 77 题的变种,就是计算所有不同 k 组合的集合。

答案

import itertools

class Solution:

    def subsets(self, nums: List[int]) -> List[List[int]]:

        res = []
        for k in range(len(nums) + 1):
            res += itertools.combinations(nums, k)

        return res

最后更新于