回溯-子集

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;
    }
}
相关推荐
快手技术7 分钟前
AAAI 2026|全面发力!快手斩获 3 篇 Oral,12 篇论文入选!
前端·后端·算法
颜酱9 分钟前
前端算法必备:滑动窗口从入门到很熟练(最长/最短/计数三大类型)
前端·后端·算法
8***f39510 分钟前
Spring容器初始化扩展点:ApplicationContextInitializer
java·后端·spring
做科研的周师兄11 分钟前
【MATLAB 实战】栅格数据 K-Means 聚类(分块处理版)—— 解决大数据内存溢出、运行卡顿问题
人工智能·算法·机器学习·matlab·kmeans·聚类
X在敲AI代码12 分钟前
leetcodeD3
数据结构·算法
r_oo_ki_e_16 分钟前
java22--常用类
java·开发语言
余瑜鱼鱼鱼18 分钟前
Java数据结构:从入门到精通(十一)
数据结构
码农小韩19 分钟前
基于Linux的C++学习——循环
linux·c语言·开发语言·c++·算法
linweidong27 分钟前
C++ 中避免悬挂引用的企业策略有哪些?
java·jvm·c++
用户937611475816128 分钟前
并发编程三大特性
java·后端