题目

Given a collection of integers that might contain duplicates, S, return all possible subsets.

Note:

  • Elements in a subset must be in non-descending order.
  • The solution set must not contain duplicate subsets.

For example,
If S = [1,2,2], a solution is:

[
[2],
[1],
[1,2,2],
[2,2],
[1,2],
[]
]

代码:oj测试通过 Runtime: 78 ms

 class Solution:
# @param num, a list of integer
# @return a list of lists of integer
def dfs(self, start, S, result, father_elements):
if father_elements in result:
return
result.append(father_elements)
for i in range(start, len(S)):
self.dfs(i+1, S, result, father_elements+[S[i]]) def subsetsWithDup(self, S):
# none case
if S is None:
return []
# deep first search
result = []
first_depth = {}
self.dfs(0, sorted(S), result, [])
return result

思路

大体思路跟Subsets差不多,详情见:

http://www.cnblogs.com/xbf9xbf/p/4253208.html

只需要每次向result中添加子集时注意判断一下这个子集是否已经存在。如果存在那么就直接返回,不做处理。

最新文章

  1. 简历生成平台项目开发-STEP5初步界面demo实现
  2. 剑指offer七:两个链表的第一个公共结点
  3. [BCB] C++ BUILDER 绘图 随机生成图形
  4. 利用Abot爬虫和visjs 呈现漫威宇宙
  5. NLPIR分词工具的使用(java环境下)
  6. VS预生成事件命令行 和 生成后事件命令行
  7. (转)MongoDB 3.0 WT引擎参考配置文件
  8. Mybatis 示例之 SelectKey(转)
  9. Android监听事件
  10. LoadRunner日志(归档记录,以便自己查阅)
  11. 缩进(Python很将就格式)
  12. 纪中集训 Day 7
  13. vue 增删改查
  14. Export OracleDB Schema To Doc
  15. 值得Python小白学习的书 简单推荐几本吧
  16. C#异步的世界(重点:新异步)
  17. 发行版Linux和麒麟操作系统下netperf 网络性能测试
  18. 关于electron的跨域问题,有本地的图片的地址,访问不了本地的图片
  19. Beginning SDL 2.0(3) SDL介绍及BMP渲染
  20. redis优化方案

热门文章

  1. Mysql数据库操作语句总结(二)
  2. javascript设计模式之装饰者模式
  3. python3基础10(操作日志)
  4. spring 中使用quartz实现定时任务
  5. 利用expect实现自动化操作
  6. m3u8视频下载方法
  7. PHP:implode(),emplode() 字符串数组,数组字符串转换函数
  8. java—三大框架详解,其发展过程及掌握的Java技术慨括
  9. 国产中标麒麟Linux部署dotnet core 环境并运行项目 (二) 部署运行控制台项目
  10. jeesite项目