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

Leetcode 46 Permutation Leetcode 78 Subsets

Permutation
题意
https://leetcode.com/problems/permutations/description/

返回[1,2,3]的全排列

首先既然是全排列对吧,我需要统计这个tmp数组里的元素个数是不是究竟等于3,然后iterate所有的数字对吧

class Solution {
public:
    vector<vector<int>> arr;
    
    vector<vector<int>> permute(vector<int>& nums) {
        vector<int> tmp;
        vector<bool> vis(nums.size(), false);
        dfs(nums, tmp, vis);
        return arr;
    }
    void dfs(vector<int>& nums, vector<int>& tmp, vector<bool>& vis){
        if (tmp.size() == nums.size()) {
            arr.push_back(tmp);
        }
        for(int i = 0; i < nums.size(); i++) {
            if (!vis[i]) {
                tmp.push_back(nums[i]);
                vis[i] = true;
                dfs(nums,tmp, vis);
                tmp.pop_back();
                vis[i] = false;
            }
        }
    }
};

Subsets
题意,返回[1,2,3]所有的组合

我在dfs中每次某个位置的元素进行选或者不选的操作

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

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

相关文章:

  • mysql中查询json的技巧
  • xxl-job回调执行器,发生NPE空指针异常
  • 创建Java项目,并添加MyBatis包和驱动包
  • HarmonyOS Next系列之华为账号一键登录功能实现(十四)
  • 使用JMeter玩转tidb压测
  • 虹软人脸识别
  • AndroidStudio依赖报错
  • 力扣(leetcode)每日一题 1014 最佳观光组合
  • Android 开启相机一键拍照,一键录制
  • VirtualService和destinationRule
  • 大数据毕业设计选题推荐-国潮男装微博评论数据分析系统-Hive-Hadoop-Spark
  • Ranger集成CDH6.3.1详细步骤
  • 『功能项目』下载Mongodb【81】
  • C++中string的使用
  • ​​乐​​牛一​面​​​游​​卡​​一​二​​​​面​
  • 什么是IPv6
  • vue中使用jsencrypt加密
  • 超声波清洗机哪家好用又实惠?2024热门超声波清洗机选择推荐!
  • 工作笔记20240927——vscode + jlink调试
  • 数字化AI直播革命:无人直播新纪元,真AI赋能未来!
  • 小程序开发平台源码系统 各行各业适用的小程序开的平台 带完整的安装代码包以及搭建部署教程
  • 本篇4K,立志最细,FreeRtos中Queue使用教程与个人理解!!!
  • 《向量数据库指南》——Fivetran 的 Partner SDK:构建自定义连接器和目标
  • 【学习笔记】手写 Tomcat 四
  • 实战笔记:Vue2项目Webpack 3升级到Webpack 4的实操指南
  • 双指针---(部分地更新)