您现在的位置是:首页 > 正文

LeetCode90:Subsets II

2024-02-29 17:25:54阅读 4

Given a collection of integers that might contain duplicates, nums, return all possible subsets.

Note:
Elements in a subset must be in non-descending order.
The solution set must not contain duplicate subsets.
For example,
If nums = [1,2,2], a solution is:
这里写图片描述

这道题是求子集Subsets的更一般的情况,即给定的集合中存在重复的情况,可以使用Combination Sum II 相同的方法来消除重复元素。

做到现在发现好多题目都是触类旁通的了。

runtime:8ms

class Solution {
public:
    vector<vector<int>> subsetsWithDup(vector<int>& nums) {
            vector<int> path;
            vector<vector<int>> result;
            result.push_back(path);
            sort(nums.begin(),nums.end());
            helper(nums,0,path,result);
            return result;
    }

    void helper(vector<int> &nums,int pos,vector<int>& path,vector<vector<int>> &result)
    {
        if(pos==nums.size())
            return ;

        for(int i=pos;i<nums.size();i++)
        {
            path.push_back(nums[i]);
            result.push_back(path);
            helper(nums,i+1,path,result);
            path.pop_back();
            while(nums[i]==nums[i+1]) i++;
        }
    }
};

网站文章

  • Docker安装mysql无法远程客户端访问

    Docker安装mysql无法远程客户端访问

    可以看到箭头部分,该库的root用户只允许当前主机连接,所以要登录到数据库中,修改root的连接方式为‘%’解决办法:1进入到mysql容器内部docker exec -it mysql_slave3...

    2024-02-29 17:25:14
  • C#基础知识(以宝马,车,车轮为例)

    C#基础知识(以宝马,车,车轮为例)

    派生类using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.IO;using ClassLibrary1.util;using ClassLibrary1.util.util2;namespace ClassLibrary1...

    2024-02-29 17:25:05
  • Java7的异常处理新特性-addSuppressed()方法等

    Java7的异常处理新特性-addSuppressed()方法等

    2024-02-29 17:24:57
  • linux显卡被占用但是找不到对应pid问题

    linux显卡被占用但是找不到对应pid问题

    目录问题解决参考完 问题 在运行任务时,报错显卡memory不够,但是用nvidia-smi发现该卡并没有对应的pid,但是memory却使用了很多 猜想应该是上个任务没被完全杀死,因为几分钟前自己把...

    2024-02-29 17:24:48
  • 计算机毕业设计:基于微信小程序的企业工作日报系统(教程+代码框架)

    计算机毕业设计:基于微信小程序的企业工作日报系统(教程+代码框架)

    基于微信小程序的企业工作日报系统是一个有潜力的项目,可以提高企业内部的工作效率和信息管理。通过上述功能模块、技术架构和用户界面设计,可以实现一个全面的平台。这个项目可以不断改进和扩展,以满足不断增长的企业需求,帮助更多企业实现高效的内部管理。

    2024-02-29 17:24:21
  • 你的前半生,可曾有过下定决心做某件事的时候?

    作者:陆小凤首发:微信公众号【程序员江湖】不知道你们有没有看过电视剧《我的前半生》里面的女主在遭遇家庭变故之后终于颠覆了自己,最终成为了独立的女性。平淡的生活看似波澜不惊,实际上也在消磨着你的时间,磨...

    2024-02-29 17:24:08
  • Codeforces Round #609 (Div. 2) E. K Integers

    题目连接数字相邻只需求出逆序对就好,但是 不相邻,那么我们可以将所有的数字移到中间位置(贪心可证明),然后求出每个数字移到中间的代价之和即可,逆序对可以边算边求,每次求出这个数字之前比它小的数字的个数,那么 用这个数字减去个数在减一就是后面的比它小的数字的个数,也就是逆序对要增大的值。#include <bits/stdc++.h>using namespace std; #d...

    2024-02-29 17:23:38
  • 报Java培训班出来真的好就业吗?

    报Java培训班出来真的好就业吗?

    肯定是要比自学好就业的,可以看看我们最新的武汉校区Java154班的就业情况,闭眼入39个工作日就业率90.27%,平均薪资9372元,班级拿到过万offer的同学占比41%。还可以看我们学员的off...

    2024-02-29 17:23:31
  • 计算机网络实验四 DNS的配置,实验五 DNS服务器配置与管理实验

    DNS服务器配置与管理实验:10月23号实验项目名称: DNS服务器配置与管理实验项目性质:专业类所属课程名称:计算机网络试验计划学时:4学时一、实验的目的通过本实验的学习,使学生了解并掌握DNS服务...

    2024-02-29 17:23:25
  • c++线程编程笔记

    c++线程编程笔记

    阻塞主线程,让主线程等待子线程完成执行,然后子线程与主线程汇合,主线程继续。定义的时候指定线程调用的函数myFunc。

    2024-02-29 17:22:56