leetcode 78 python 子集

传送门

题目要求

给定一组不含重复元素的整数数组 nums,返回该数组所有可能的子集(幂集)。

说明:解集不能包含重复的子集。

示例:

输入: nums = [1,2,3]
输出:
[
[3],
[1],
[2],
[1,2,3],
[1,3],
[2,3],
[1,2],
[]
]

思路

构造嵌套列表[[]],遍历给定数组,每次将遍历到的元素,再遍历的加入到嵌套列表的元素,再将得到的新的元素加入到嵌套列表。

class Solution:
    def subsets(self, nums):
        """
        :type nums: List[int]
        :rtype: List[List[int]]
        """
        res = [[]]
        for num in nums:
            # [:]前复制,为了不破坏被遍历数组
            for i in res[:]:
                temp = i[:]
                temp.append(num)
                res.append(temp)
        return res
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • <center>#1 Two Sum</center> link Description:Given an arr...
    铛铛铛clark阅读 2,252评论 0 3
  • 动态规划 111. 爬楼梯思路类似斐波那契数列注意考虑第 0 阶的特殊情况 272. 爬楼梯 II思路类似上题,只...
    6默默Welsh阅读 2,485评论 0 1
  • 排序算法几种分类方式: 1,稳定排序和不稳定排序 如果a==b, 当排序之前a在b的前面,排序后,a仍然在b...
    fly_ever阅读 456评论 0 0
  • 如果父母反对你的婚事,你该怎么办?许多人由于“不想伤了父母的心”,而陷入“不愿和深爱的他(她)分手”的痛苦中。有人...
    豪_豪阅读 304评论 0 0
  • 每个人需要坚持的东西很多但是应该也有很多时不得已的坚持吧?而我更想要的是内心喜欢的坚持。 又是听到马上要打迎新杯的...
    Justin_贾富贵阅读 330评论 2 0