美文网首页
非空子集

非空子集

作者: 正在努力ing | 来源:发表于2018-08-26 15:58 被阅读0次
请编写一个方法,返回某集合的所有非空子集。
给定一个int数组A和数组的大小int n,请返回A的所有非空子集。保证A的元素个数小于等于20,且元素互异。各子集内部从大到小排序,子集之间字典逆序排序,见样例。
测试样例:

[123,456,789]
返回:{[789,456,123],[789,456],[789,123],[789],[456 123],[456],[123]}

方法一:

class Subset:
    # 返回二维[[],[],[]]
    def getSubsets(self, A, n):
        # write code here
        A.sort(reverse=True)
        self.result = []
        self.getS(A,n,[])
        return self.result


    def getS(self,A,n,buff):
        buff1 = [v for v in buff]

        buff1.append(A[-n])

        if n == 1:
            self.result.append(buff1)

            if buff:
                self.result.append(buff)

            return
        self.getS(A,n-1,buff1)
        self.getS(A,n-1,buff)

相关文章

  • 确界原理(实数的连续性)

    定理表述 的任何一个非空且有上界的子集合在中有上确界。 的任何一个非空且有下界的子集合在中有下确界。 证明思路 分...

  • 我叫非空真子集

    今天我交集。

  • leetcode动态规划—背包系列(二)

    416. 分割等和子集 给定一个只包含正整数的非空数组。是否可以将这个数组分割成两个子集,使得两个子集的元素和相等...

  • Leetcode-Medium 416. Partition E

    题目描述 给定仅包含正整数的非空数组,查找是否可以将数组划分为两个子集,使得两个子集中的元素总和相等。例子1: 例...

  • 动态规划:416.分割等和子集(0-1背包)

    /** 题目 给定一个只包含正整数的非空数组。是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。 注意:...

  • 每日一题-leetcode 416. 分割等和子集

    给你一个 只包含正整数 的 非空 数组 nums 。请你判断是否可以将这个数组分割成两个子集,使得两个子集的元素和...

  • 高中数学里面常见的陷阱,留意了(上)

    一、集合 ①空集:由于空集是任何集合的子集,同时空集是任何非空集合的真子集,因此在遇到或的时候,一定需要考虑B为空...

  • LeetCode 416. 分割等和子集

    题目 给你一个 只包含正整数的非空数组 nums 。请你判断是否可以将这个数组分割成两个子集,使得两个子集的元素和...

  • 分割等和子集

    题目描述:给定一个只包含正整数的非空数组。是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。 示例:输入...

  • 2018-08-26 LeetCode分割等和子集

    给定一个只包含正整数的非空数组。是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。 京东2018校招求神...

网友评论

      本文标题:非空子集

      本文链接:https://www.haomeiwen.com/subject/zcuoiftx.html