leetcode 78. 子集

news2024/11/24 3:15:10

2023.7.22

        本题为回溯系列的一道标准模板题。 如果将回溯问题抽象为一棵树的话,那么之前的组合、分割问题都是为了找到这棵树的叶子节点,而子集是要找到这棵树的所有节点。

        然后要注意,子集是无序的,即{1,2}和{2,1}是相同的,所以回溯的for循环中,i需要从start开始而不是从0开始。

        接下来上代码:

class Solution {
public:
    vector<vector<int>> ans;
    vector<int> path;

    void backtrating(vector<int> nums,int start)
    {
        ans.push_back(path);
        //此中止条件可以不要,因为当start超出nums数组,意味着for循环也结束了。
        // if(start > nums.size()-1)
        // {
        //     return;
        // }
        for(int i=start; i<nums.size(); i++)
        {
            path.push_back(nums[i]);
            backtrating(nums,i+1);
            path.pop_back();
        }
    }

    vector<vector<int>> subsets(vector<int>& nums) {
        backtrating(nums,0);
        return ans;
    }
};

        时间复杂度分析:由于每个元素都有选取和不选取两种状态,一共有n个元素的话,就有2^n种子集。 又因为每个子集都需要加入数组,所以总时间复杂度为O(n × 2^n)。

        空间复杂度:O(n)。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/779060.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

幂等性设计与实现

文章目录 前言1.全局唯一ID1.1 前端防止重复提交1.2 token机制1.3 数据库表加唯一约束 2.幂等下 ABA问题 与乐观锁2.1 乐观锁2.2 如何解决ABA问题&#xff1f; 3.分布式锁和事务3.1 分布式锁&#xff1a;3.2. 分布式事务 前言 幂等性&#xff08;Idempotence&#xff09;是一个…

导航、开源镜像、Prompt ( AI 提示词 )、AI工具集、chatgpt镜像

1、导航 网站 众多网址导航中&#xff0c;哪个最好&#xff1f;理由是什么&#xff1f; &#xff1a;https://www.zhihu.com/question/19899559 除了百度&#xff0c;其他搜索引擎&#xff1a; 综合类搜索导航(Anywhere Anything)&#xff1a;http://lackar.com/aa/ 渗透师 导…

开源QianWei搭建音乐网站,并实现公网连接

开源QianWei搭建音乐网站&#xff0c;并实现公网连接 1、前言2、本地网页搭建2.1环境使用2.2 支持组建选择2.3 网页安装 3、本地网页发布3.1 Cpolar云端设置3.2 Cpolar本地设置 4、公网访问测试5、结语 1、前言 音乐是我们生活和工作中不可或缺的调剂&#xff0c;它能让我们心…

二,jmeter的简介还有一些参数的说明

文章目录 一、jmeter简介及安装1. 简介2. 安装 二、jmeter设置语言三、jmeter文件路径说明四、编写jmeter脚本五、乱码的处理&#xff1a;1. 请求内容出现乱码处理方法2. 响应内容出现乱码处理方法 一、jmeter简介及安装 1. 简介 Apache 托管的开源java工具接口测试、自动化测…

Sublime Text 设置中文

文章目录 1. Subime Text 官网2. 中文设置 1. Subime Text 官网 https://www.sublimetext.com/ 2. 中文设置 打开 sublime&#xff0c;ctrl shift p&#xff0c;在对话框搜索 Install Package Control&#xff0c;点击 会弹出一个消息框&#xff0c;表示插件列表加载完成…

【每日一题】42. 接雨水

【每日一题】42. 接雨水 42. 接雨水题目描述解题思路 42. 接雨水 题目描述 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图&#xff0c;计算按此排列的柱子&#xff0c;下雨之后能接多少雨水。 示例 1&#xff1a; 输入&#xff1a;height [0,1,0,2,1,0,1,3,2,1,2,1] 输…

【STM32CubeMX】HC_SR04模块测距

前言 本文章介绍了基于STM32F103的HAL库&#xff0c;完成对HC_SR04超声波模块测距的基本思路和工程案例。 环境 STM32F103C6T6系统板&#xff0c;72MHz主频基于STM32CubeMX生成的HAL库代码硬件连接&#xff1a; PB12 — Echo(HC_SR04)&#xff0c;PB13 — Trig(HC_SR04)PB9 —…

第二十二章:Non-local Neural Networks ——非局部神经网络

0.摘要 卷积和循环操作都是一次处理一个局部邻域的基本构建模块。在本文中&#xff0c;我们提出了非局部操作作为捕捉长程依赖关系的通用构建模块族。受计算机视觉领域经典的非局部均值方法[4]的启发&#xff0c;我们的非局部操作将一个位置的响应计算为所有位置特征的加权和。…

LiveNVR监控流媒体Onvif/RTSP功能-拉转Onvif/RTSP/RTMP/FLV/HLS直播流流媒体服务视频广场页面集成视频播放集成说明

LiveNVR拉转Onvif/RTSP/RTMP/FLV/HLS直播流流媒体服务视频广场页面集成视频播放集成说明 1、视频页面集成1.1、关闭接口鉴权1.2、视频广场页面集成1.2.1、隐藏菜单栏1.2.2、隐藏播放页面分享连接 1.3、其它页面集成 2、播放分享页面集成2.1、获取 iframe 代码2.2、html 集成ifr…

ext4 mballoc之buddy算法

buddy bitmap 根据《Ext4文件系统介绍 - 理论篇_nginux的博客-CSDN博客》我们知道磁盘上有1block 大小(默认4K&#xff09;data block bitmap&#xff0c;每bit位代表一个block的使用情况&#xff0c;1代表占用&#xff0c;0代表空闲。data block bitmap 可以表示4 * 1024 * …

代码随想录| 图论02●695岛屿最大面积 ●1020飞地的数量 ●130被围绕的区域 ●417太平洋大西洋水流问题

#695岛屿最大面积 模板题&#xff0c;很快.以下两种dfs&#xff0c;区别是看第一个点放不放到dfs函数中处理&#xff0c;那么初始化的area一个是1一个是0 int dir[4][2]{0,1,0,-1,1,0,-1,0};void dfs(int x, int y,int n, int m, int &area,vector<vector<bool>…

HTML入门教程||HTML 属性||HTML 元素

HTML 元素 HTML 元素 HTML 文档由 HTML 元素定义&#xff0c;HTML 元素指的是从开始标签&#xff08;start tag&#xff09;到结束标签&#xff08;end tag&#xff09;的所有代码。 HTML 元素 开始标签 *元素内容结束标签 *<p>这是一个段落</p><a href"…

《Docker和服务器无状态化:容器化应用的优势,构建高可伸缩性和灵活性》

&#x1f337;&#x1f341; 博主 libin9iOak带您 Go to New World.✨&#x1f341; &#x1f984; 个人主页——libin9iOak的博客&#x1f390; &#x1f433; 《面试题大全》 文章图文并茂&#x1f995;生动形象&#x1f996;简单易学&#xff01;欢迎大家来踩踩~&#x1f33…

【MATLAB第58期】基于MATLAB的PCA-Kmeans、PCA-LVQ与BP神经网络分类预测模型对比

【MATLAB第58期】基于MATLAB的PCA-Kmeans、PCA-LVQ与BP神经网络分类预测模型对比 一、数据介绍 基于UCI葡萄酒数据集进行葡萄酒分类及产地预测 共包含178组样本数据&#xff0c;来源于三个葡萄酒产地&#xff0c;每组数据包含产地标签及13种化学元素含量&#xff0c;即已知类…

c++高性能264/265实时流媒体服务器/h5客户端整体解决方案源码

文章目录 c高性能264/265实时流媒体服务器/h5客户端整体解决方案源码缘由目前的前端技术栈&#xff0c;已经能够支撑常规的安防桌面客户端软件开发我的方案一套c后端,两套前端H5 UI方案一&#xff1a;多屏h265/h264混合显示H5 UI方案二&#xff1a;H5监控大屏,提供视图切换功能…

基于SRS后端开发的前端页面

SRS(Simple Realtime Server)是简单高效的实时视频服务器&#xff0c;支持RTMP、WebRTC、HLS、HTTP-FLV、SRT等多种实时流媒体协议。 框架 https://www.thinkphp.cn 官网 https://ossrs.net/lts/zh-cn 播放器1 https://www.cdnbye.com 播放器2 https://www.artplayer.org …

苹果的Apple GPT要来了?

据外媒消息&#xff0c;苹果正在内部开发类 ChatGPT 的产品&#xff0c;与微软、OpenAI、谷歌、Meta 等科技巨头在生成式 AI 赛道展开竞争。该消息使得苹果股价上涨了 2%。据苹果工程师透露&#xff0c;苹果在内部构建了代号为“Ajax”的大语言模型开发框架&#xff0c;并构建了…

【C语言】表达式求值相关问题汇总—>隐式类型转换(整型提升)、算数转换与操作符优先级汇总(收藏查阅)

&#x1f440;樊梓慕&#xff1a;个人主页 &#x1f3a5;个人专栏&#xff1a;《C语言》《数据结构》《蓝桥杯试题》 &#x1f31d;每一个不曾起舞的日子&#xff0c;都是对生命的辜负。 目录 前言&#xff1a; 一、隐式类型转换 &#xff08;一&#xff09;整型提升的意义…

【六天】高时空分辨率、高精度一体化预测技术之风、光、水能源自动化预测技术应用

最初的互补发电系统&#xff0c;就是将不同发点组件进行简单的组合&#xff0c;因为缺乏详细的数学计算模型&#xff0c;同时系统只用于保证率低的用户&#xff0c;导致使用寿命不长。随着新能源系统应用范围的不断扩大&#xff0c;保证率和经济性要求的提高&#xff0c;需要高…

Rust vs Go:常用语法对比(四)

题图来自 Go vs. Rust performance comparison: The basics 61. Get current date 获取当前时间 package mainimport ( "fmt" "time")func main() { d : time.Now() fmt.Println("Now is", d) // The Playground has a special sandbox, so you …