码迷,mamicode.com
首页 > 其他好文 > 详细

17. 子集

时间:2020-05-04 15:21:28      阅读:47      评论:0      收藏:0      [点我收藏+]

标签:header   active   markdown   lis   checked   dup   col   tor   sort   

17. 子集

中文English

给定一个含不同整数的集合,返回其所有的子集。

样例

样例 1:

输入:[0]
输出:
[
  [],
  [0]
]

样例 2:

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

挑战

你可以同时用递归与非递归的方式解决么?

注意事项

子集中的元素排列必须是非降序的,解集必须不包含重复的子集。

 
 
输入测试数据 (每行一个参数)如何理解测试数据?
class Solution:
    """
    @param nums: A set of numbers
    @return: A list of lists
    """
    ‘‘‘
    大致思路:
    1.循环,取出所有符合的子集,最后加[]进来,返回
    ‘‘‘
    def subsets(self, nums):
        res = []
        for i in range(len(nums)):
            if i == 0:
                res.append([nums[i]])
            else:
                for j in range(len(res)):
                    res.append(sorted(res[j] + [nums[i]]))
                res.append([nums[i]])
        res = res + [[]]
        return res 

 

18. 子集 II

中文English

给定一个可能具有重复数字的列表,返回其所有可能的子集。

样例

样例 1:

输入:[0]
输出:
[
  [],
  [0]
]

样例 2:

输入:[1,2,2]
输出:
[
  [2],
  [1],
  [1,2,2],
  [2,2],
  [1,2],
  []
]

挑战

你可以同时用递归与非递归的方式解决么?

注意事项

  • 子集中的每个元素都是非降序的
  • 两个子集间的顺序是无关紧要的
  • 解集中不能包含重复子集
 
 
输入测试数据 (每行一个参数)如何理解测试数据?
class Solution:
    """
    @param nums: A set of numbers.
    @return: A list of lists. All valid subsets.
    """
    ‘‘‘
    大致思路:
    1.循环,取出所有符合的子集,最后加[]进来,返回
    ‘‘‘
    def subsetsWithDup(self, nums):
        res = []
        for i in range(len(nums)):
            if i == 0:
                res.append([nums[i]])
            else:
                for j in range(len(res)):
                    a = sorted(res[j] + [nums[i]])
                    if a not in res:
                        res.append(a)
                if [nums[i]] not in res:
                    res.append([nums[i]])
        res = res + [[]]
        return res 

 

17. 子集

标签:header   active   markdown   lis   checked   dup   col   tor   sort   

原文地址:https://www.cnblogs.com/yunxintryyoubest/p/12826419.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!