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

【子集回溯】Leetcode 78. 子集 90. 子集 II

【子集回溯】Leetcode 78. 子集 90. 子集 II

    • 78. 子集
    • 90. 子集 II

---------------🎈🎈78. 子集 题目链接🎈🎈-------------------
在这里插入图片描述

78. 子集

class Solution {
    List<List<Integer>> result= new ArrayList<>();
    public List<List<Integer>> subsets(int[] nums) {
        result.add(new ArrayList<>());
        helper(nums,0);
        return result;
    }
    List<Integer> resulttemp = new ArrayList<>();
    public void helper(int[] nums, int start){
        for(int i = start; i < nums.length; i++){
            resulttemp.add(nums[i]);
            result.add(new ArrayList<>(resulttemp));
            helper(nums,i+1);
            resulttemp.removeLast();
        }
    }
}
        

在这里插入图片描述

---------------🎈🎈90. 子集 II 题目链接🎈🎈-------------------

90. 子集 II

使用一个flag 树层去重——当前层如果遇到相同的就跳过 【去重前记得排序!】

class Solution {
    List<List<Integer>> result = new ArrayList<>();
    List<Integer> resulttemp = new ArrayList<>();
    public List<List<Integer>> subsetsWithDup(int[] nums) {
        Arrays.sort(nums);
        result.add(resulttemp);
        helper(nums,0);
        return result;
    }
    public void helper(int[] nums, int start){
        boolean flag = false;
        for(int i = start; i < nums.length; i++){
            if(flag && nums[i] == nums[i-1] ){
                continue;
            }
            flag = true;
            resulttemp.add(nums[i]);
            result.add(new ArrayList<>(resulttemp));
            helper(nums,i+1);
            resulttemp.removeLast();

        }
    }
}
http://www.dtcms.com/a/9857.html

相关文章:

  • 文心一言 vs GPT-4 -- 全面横向比较
  • SpringBoot(48)-使用 SkyWalking 进行分布式链路追踪
  • Spark-Scala语言实战(11)
  • 【智能算法】蜜獾算法(HBA)原理及实现
  • 笔记: JavaSE day15 笔记
  • 百卓Smart管理平台 importexport.php SQL注入漏洞复现(CVE-2024-27718)
  • OSPF中配置静态路由负载分担实验简述
  • SpringBoot -- Profiles
  • 手机无线投屏到windows11电脑
  • 基于深度学习的机场航拍小目标检测系统(网页版+YOLOv8/v7/v6/v5代码+训练数据集)
  • 49. QT中的HTTP通信与JSON数据格式解析
  • c#仿ppt案例
  • UE4 方块排序动画
  • 什么是自然语言处理(NLP)?自然语言处理(NLP)的概述
  • Jenkins执行策略(图文讲解)
  • Pandas处理缺省数据
  • win10微软拼音输入法 - bug - 在PATH变量为空的情况下,无法输入中文
  • 了解与生成火焰图
  • Ollama教程——入门:开启本地大型语言模型开发之旅
  • python的下载及安装
  • 四分之一的组织因遭遇攻击而关闭 OT 运营
  • 谷粒商城实战(008 缓存)
  • 数论与线性代数——整除分块【数论分块】的【运用】【思考】【讲解】【证明(作者自己证的QWQ)】
  • 详细总结前中后序、层次遍历二叉树(非递归方法)
  • 【Python】记录槽位法:Leetcode 894. 所有可能的真二叉树
  • 摸鱼toyaml.com更新
  • udhcpc 获取不到ip地址
  • 【教学类-09-07】20240401细线迷宫图02+箭头图片(A4横版一页-2份竖版)
  • C++ 哈希思想应用:位图,布隆过滤器,哈希切分
  • 分布式唯一ID 雪花算法