当前位置: 首页 > article >正文

LeetCode78:子集

链接:78. 子集

假设我们要求[1, 2, 3]的子集:

我们知道[1, 2]的子集是A:

而[1, 2, 3]就是比[1, 2]多了一个元素3;所以将3加入到上述A中的每个集合中,得到一个新集合B:

结论:[1, 2, 3]的子集就是上述的A ∪ B的:

代码实现:

    public static List<List<Integer>> enumerate(int[] nums) {
        List<List<Integer>> res = new ArrayList<>();
        res.add(new ArrayList<>());
        // 初始形态时,res为空;遍历每个操作数nums
        for (Integer n : nums) {
            // 遍历res结果集里的每个集合,都把n加入一次得到新的集合
            for (int i = 0; i < res.size(); i++) {
                List<Integer> newSub = new ArrayList<>(res.get(i));
                newSub.add(n);

                res.add(newSub);
            }
        }
        return res;
    }


http://www.kler.cn/a/422060.html

相关文章:

  • HTML 添加 文本水印
  • sys.path
  • 第31天:安全开发-JS应用WebPack打包器第三方库JQuery安装使用安全检测
  • spring boot mapper测试类优化
  • 【C#】书籍信息的添加、修改、查询、删除
  • 【Golang】WaitGroup 实现原理
  • unity与android拓展
  • 量化交易系统开发-实时行情自动化交易-8.8.同花顺 SuperMind 平台
  • 【Oracle11g SQL详解】子查询的分类与嵌套查询实例
  • Typora设置自动上传图片到图床
  • Linux查看系统基本信息
  • 推荐文章:FLUI Framework——打造流畅的微软界面体验
  • Mysql外键约束与关联表操作
  • 讯方智汇云校HarmonyOS培训,培养鸿蒙原生应用开发人才
  • TypeScript (一)运行环境配置,数据类型,可选类型,联合类型,type与interface,交叉类型,断言as,字面量类型,类型缩小
  • 【青牛科技】超低功耗混合信号处理器由多种设备组成的流量计电路芯片——D8331
  • Linux之信号集基础
  • 怎么自己创建一个网站? 开发语言首选 java,使用CMS网站内容管理系统是不错的选择
  • Redis设计与实现第17章 -- 集群 总结2(执行命令 重新分片)
  • 能源投资工程VS智能驾驶,DolphinScheduler如何当好传统行业与前沿科技的桥梁?
  • [网络] UDP通信接口及一些简易项目
  • vue 通过 mqtt 实现实时接收消息
  • 算法笔记:力扣24. 两两交换链表中的节点
  • centos7下安装promethus及grafana
  • flutter 报错 error: unable to find git in your path.
  • MongoDB注入攻击测试与防御技术深度解析