回溯-子集

78.子集

java 复制代码
给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)。

解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。

输入 :整型数组
输出 :二元列表
思路:利用二进制,(比如说数组长度为3)000、001、010、011、100、101、110、111刚好可以遍历所有情况

java 复制代码
class Solution {
    List<List<Integer>> result = new ArrayList<>();
    List<Integer> tempList = new ArrayList<>();
    public List<List<Integer>> subsets(int[] nums) {
        int n = nums.length;
        for(int i = 0; i < (1 << n); i++){
            tempList.clear();
            for(int j = 0; j < n; j++){
                if((i & (1 << j)) != 0){
                    tempList.add(nums[j]);
                }
            }
            result.add(new ArrayList<>(tempList));
        }
        return result;
    }
}
相关推荐
恼书:-(空寄几秒前
Spring 事务失效的 8 大场景 + 原因 + 解决方案
java·后端·spring
野生技术架构师31 分钟前
1000道互联网大厂Java岗面试原题解析(八股原理+场景题)
java·开发语言·面试
jiankeljx1 小时前
Java实战:Spring Boot application.yml配置文件详解
java·网络·spring boot
cyforkk1 小时前
Java 开源项目指南:如何规范地发布首个 GitHub Release
java·开源·github
qqty12171 小时前
Java进阶学习之路
java·开发语言·学习
WHS-_-20221 小时前
Python 算法题学习笔记一
python·学习·算法
是苏浙1 小时前
初识集合框架
java·数据结构
沉鱼.441 小时前
第六届题目
算法
Zzxy1 小时前
Spring Boot 参数校验
java·spring boot
黑眼圈子1 小时前
总结一下用Java做算法的常用类和方法
java·开发语言·算法