首页 > 编程语言 >78. 子集-c++

78. 子集-c++

时间:2024-05-06 13:56:21浏览次数:26  
标签:nums c++ current re vector 子集 数组 78

给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的
子集
(幂集)。

解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。

示例 1:

输入:nums = [1,2,3]
输出:[[],[1],[2],[1,2],[3],[1,3],[2,3],[1,2,3]]
示例 2:

输入:nums = [0]
输出:[[],[0]]

class Solution {
public:
    vector<vector<int>> subsets(vector<int>& nums) {
        vector<vector<int>>re;
        vector<int>current;
        backreset(nums,re,current,0);
        return re;
    }
    void backreset(vector<int>&nums,vector<vector<int>>&re,vector<int>&current,int start)
    {
        re.push_back(current);
        for(int i=start;i<nums.size();i++)
        {
            current.push_back(nums[i]);
            backreset(nums,re,current,i+1);
            current.pop_back();
        }

    }
};

标签:nums,c++,current,re,vector,子集,数组,78
From: https://www.cnblogs.com/donghao99/p/18174877

相关文章

  • c++
    namespace命名空间我们为了防止由于定义了多个函数名,导致可能函数名重复的问题,我们创建了命名空间,为的就是区分函数名重复的问题当我们要调用某个命名空间中的函数时,我们可以直接namespace::function来进行直接调用,同时可以存放变量名,函数,再一个命令空间.....同时假如命名空间......
  • C++学习笔记
    参考https://github.com/weidongshan/cpp_projects《C++PrimerPlus》C++StandardsSupportinGCCGCCGCC中有libstdc++库的实现LLVMLLVM中有libc++库的实现面向对象编程的3大特点封装继承多态struct声明的类里的成员都是publicclass声明的类的成员都是pr......
  • c++综合实验报告友元
    综合性、设计性实验报告专业:计算机科学与技术 一、实验目的:1.熟练掌握友元函数和友元类设计的方法2.掌握友元函数的含义,友元函数和成员函数的区别。3.掌握友元类的含义。二、实验仪器或设备:微型计算机三、总体设计(设计原理、设计方案及流程等)实验内容:定义Student类和Sco......
  • C++模板
    C++模板C++是一个面向对象编程的语言,提供了类的继承和组合机制,虽然在层次结构上很简单,但使用起来非常糟糕。C++使用关键字template,告诉编译器声明的类或者对象是一个模板。模板不是像继承和组合那样重用目标代码,而是重用源代码。容器不再包含名为Object的泛型基类,而是包含未指......
  • Qt/C++音视频开发72-倍速推流/音视频同步倍速推流/不改变帧率和采样率/低倍速和高倍速
    一、前言最近多了个新需求,需要倍速推流,推流界的扛把子obs也有倍速推流功能,最高支持到两倍速。这里所说的倍速,当然只限定在文件,只有文件才可能有倍速功能,因为也只有文件才能倍速解码播放。实时视频流是不可能倍速的,因为没有时长,有时长的才可以按照播放进度来。是否是文件也不能通......
  • C++ 抽象类快速使用
    在C++中,你可以通过在类定义中使用纯虚函数(purevirtualFunction)来创建一个抽象类。这里的“抽象”意味着这个类不能被实例化,即你不能创建这个类的对象。在C++中,你可以通过在类定义中使用纯虚函数(purevirtualFunction)来创建一个抽象类。这里的“抽象”意味着这个类不能被实例化......
  • C++ lambda的重载
    先说结论,lambda是不能重载的(至少到c++23依旧如此,以后会怎么样没人知道)。而且即使代码完全一样的两个lambda也会有完全不同的类型。但虽然不能直接实现lambda重载,我们有办法去模拟。在介绍怎么模拟之前,我们先看看c++里的functor是怎么重载的。首先类的函数调用运算符是可以重载......
  • C++-研讨会(全)
    C++研讨会(全)原文:annas-archive.org/md5/5ba4b421a6ba3d7c3a23406bab386ec0译者:飞龙协议:CCBY-NC-SA4.0前言关于本书C#是一种强大而多才多艺的面向对象编程(OOP)语言,可以打开各种职业道路。但是,与任何编程语言一样,学习C#可能是具有挑战性的。由于有各种不同的资源可用,很难......
  • C++-专家编程(全)
    C++专家编程(全)原文:annas-archive.org/md5/57ea316395e58ce0beb229274ec493fc译者:飞龙协议:CCBY-NC-SA4.0前言学习路径和技术简介。这个学习路径适合谁这个学习路径适合想要提升并学习如何在最新版本的Java中构建健壮应用程序的Java开发人员。这个学习路径涵盖了什......
  • C++-游戏动画编程实用指南(全)
    C++游戏动画编程实用指南(全)原文:annas-archive.org/md5/1ec3311f50b2e1eb4c8d2a6c29a60a6b译者:飞龙协议:CCBY-NC-SA4.0前言现代游戏动画有点像黑魔法。没有太多资源详细介绍如何构建基于轨道驱动的动画系统,或者高级主题,比如双四元数蒙皮。这本书的目标就是填补这个空白。......