Java实现-子集
2017-06-30 14:38
120 查看
给定一个含不同整数的集合,返回其所有的子集
注意事项
子集中的元素排列必须是非降序的,解集必须不包含重复的子集
您在真实的面试中是否遇到过这个题?
Yes
样例
如果 S =
注意事项
子集中的元素排列必须是非降序的,解集必须不包含重复的子集
您在真实的面试中是否遇到过这个题?
Yes
样例
如果 S =
[1,2,3],有如下的解:
[ [3], [1], [2], [1,2,3], [1,3], [2,3], [1,2], [] ]
class Solution { /** * @param S: A set of numbers. * @return: A list of lists. All valid subsets. */ public ArrayList<ArrayList<Integer>> subsets(int[] nums) { // write your code here Arrays.sort(nums); ArrayList<ArrayList<Integer>> result=new ArrayList<ArrayList<Integer>>(); ArrayList<Integer> tempList=new ArrayList<Integer>(); backTracking(nums, 0, result, tempList); return result; } private static void backTracking(int[] nums, int start, ArrayList<ArrayList<Integer>> result, ArrayList<Integer> tempList){ result.add(new ArrayList<Integer>(tempList)); for(int i=start;i<nums.length;i++){ tempList.add(nums[i]); backTracking(nums, i+1, result, tempList); tempList.remove(tempList.size()-1); } } }
相关文章推荐
- 求集合的所有子集(java实现)
- 【LeetCode-面试算法经典-Java实现】【078-Subsets(子集)】
- 一个集合的所有子集的Java代码实现
- java实现C语言子集的语法分析器
- 子集生成(二进制法)-java实现
- 给定一个集合,输出它的所有子集(JAVA实现)
- Java实现-带重复元素的子集
- 在java中实现对FORM的打印功能
- 如何在Java应用程序中实现copy图像功能。
- 用JAVA实现Undo、Redo,Copy、Paste、Cut
- 用Java实现的设计模式系列(2)-Prototype
- http断点续传简单实现(java)
- 用 Java 实现回调例程
- 用Java实现的设计模式系列(3)--Builder
- 使用 .NET实现JavaTM Pet Store J2EETM 蓝图应用程序
- 在Java程序,如何实现自适应位置的快捷菜单
- 用Java实现的设计模式系列(1)-Factory
- 利用Java实现串口全双工通讯
- 利用Java实现zip压缩/解压缩
- Java Tip: 用Reflection实现Visitor模式