Given a set of distinct integers, nums, return all possible subsets.

Note: The solution set must not contain duplicate subsets.

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

[[3],[1],[2],[1,2,3],[1,3],[2,3],[1,2],[]
]昨天中秋加上头非常痛,歇了一天。早上起来看了个cse学生的新闻,又滚回被窝里睡了好久,准备再歇一天的。打开看了看一亩三分地,别人99道题就能刷进linkedin,虽然基础可能差蛮多但还是非常想去投一投简历试试的。过了九月就大批招聘来了,一定要抓紧时间刷刷题看看书。没有书上知识的支撑只看公开课视频感觉还是很虚没底。

思路:dfs+backtracking。对节点的操作需要注意:1.碰到节点就记录到result:即为pos<=nums.length 2.dps的方向,尽头(回溯点):pos==nums.length每一层的操作用pos来记录,防重复。画graph可以深入理解不同的dps,各种的对节点操作。
public class Solution {public List<List<Integer>> subsets(int[] nums) {List<List<Integer>> res=new ArrayList<>();List<Integer> check=new ArrayList<>();dps(nums,res,check,0);return res;}public void dps(int[] nums,List<List<Integer>> res,List<Integer> list,int pos){if(pos<=nums.length){res.add(new ArrayList<Integer>(list));}if(pos==nums.length){return;}for(int i=pos;i<nums.length;i++){list.add(nums[i]);dps(nums,res,list,++pos);list.remove(list.size()-1);}}}

转载于:https://www.cnblogs.com/Machelsky/p/5877871.html

78.Subsets相关推荐

  1. LeetCode 78. Subsets

    78. Subsets Given a set of distinct integers, nums, return all possible subsets. Note: The solution ...

  2. 【暴力枚举】LeetCode 78. Subsets

    LeetCode 78. Subsets Solution1:我的答案 迭代法,时间复杂度O(2n)O(2n)O(2^n),空间复杂度O(1)O(1)O(1) class Solution { pub ...

  3. 【leetcode】(python)78. Subsets亚群

    亚群 Description Example 题意 解题思路 code 78. Subsets Medium Description Given a set of distinct integers, ...

  4. 78. Subsets

    不定期更新leetcode解题java答案. 采用pick one的方式选择题目. 题意为给定一个数组,返回所有子集的集合. 采用递归的方式,逐步由空集合增加至最大数量集合.代码如下: 1 publi ...

  5. 78. Subsets 子集

    给定一组不含重复元素的整数数组 nums,返回该数组所有可能的子集(幂集). 说明:解集不能包含重复的子集. 示例: 输入: nums = [1,2,3] 输出: [[3],[1],[2],[1,2, ...

  6. leetcode [78] Subsets

    Given a set of distinct integers, nums, return all possible subsets (the power set). Note: The solut ...

  7. 继续过中等难度.0309

      .   8  String to Integer (atoi)    13.9% Medium   . 151 Reverse Words in a String      15.7% Mediu ...

  8. 320. Generalized Abbreviation-- back tracking and bit manipulation(待续)

    把一个字符串中字母用数字代替,产生所有的组合数Input: "word" Output: ["word", "1ord", "w1 ...

  9. Python JAVA Solutions for Leetcode

    Python & JAVA Solutions for Leetcode (inspired by haoel's leetcode) Remember solutions are only ...

最新文章

  1. 谷歌正式推出官方“Android界面设计”网站
  2. eclipse启动tomcat报错
  3. Wireshark 【OSI三层】抓包过滤规则和显示过滤规则实例
  4. 基于STM32系列芯片的 IAP实现的探索
  5. 大型项目中会出现的一些问题:
  6. 自适应宽度元素单行文本省略用法探究
  7. root 链接ftp
  8. 演练 开心餐厅 0929
  9. 关于使用cadence建pad
  10. Uber七折流血融资,软银拿下15%股份,滴滴笑了
  11. 设计模式(十七)—— 迭代器模式
  12. MySQL第七章之后的
  13. 2020年Google SEO 8大趋势
  14. ubuntu下使用testerSunshine12306抢票程序
  15. Android 底层知识拾零,字节跳动Android高级工程师
  16. 怎么禁用笔记本触摸板
  17. 教育行业BP怎么写?参考这个案例可避开80%的坑丨案例
  18. 转:Jenkins+Jmeter+ant接口自动化框架for Linux学习
  19. Vue中的methods配置项中的箭头函数this指向及相关源码分析
  20. #VS C++ 2019# VSC++基础--下载并安装VSC++

热门文章

  1. 1.UNIX网络编程卷1:源码配置
  2. 实现运动轨迹_【自动驾驶】运动规划丨速度规划丨时间维度
  3. java求小数高精度_浅谈Java中的高精度整数和高精度小数
  4. mysql数据库业务逻辑_Mysql业务设计(逻辑设计)
  5. * IO流递归拷贝一个文件夹 按源文件夹格式拷贝
  6. 计算机是一种在什么控制下 自动高速,计算机是一种能对数字化信息进行自动高速运算的通用处....ppt...
  7. c#解决在数据表格中无法显示秒数问题
  8. 基础的shell编程问题(一)
  9. Linux简单命令收录(who,echo,date)【上】
  10. 一元多项式的表示和相加【数据结构】