回溯-子集

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;
    }
}
相关推荐
heartbeat..8 小时前
网络通信核心知识全解析:模型、协议与 TCP 机制
java·网络·网络协议·tcp/ip
闲看云起8 小时前
LeetCode-day2:字母异位词分组分析
算法·leetcode·职场和发展
weixin_440730509 小时前
Java基础学习day01
java·开发语言·学习
NAGNIP9 小时前
Hugging Face 200页的大模型训练实录
人工智能·算法
Swift社区9 小时前
LeetCode 457 - 环形数组是否存在循环
算法·leetcode·职场和发展
天远云服9 小时前
Go 语言实战:构建高并发天远“全国自然人人脸比对 V3”微服务网关
java·大数据·微服务·golang
PPPPickup9 小时前
easychat项目复盘---管理端系统设置
java·开发语言·前端
挖矿大亨9 小时前
C++中的this指针
java·开发语言·c++
sheji34169 小时前
【开题答辩全过程】以 共享单车管理系统为例,包含答辩的问题和答案
java
2401_877274249 小时前
2025数据结构实验八:排序
数据结构·算法·排序算法