当前位置: 首页 > 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/news/326502.html

相关文章:

  • 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的实操指南
  • 双指针---(部分地更新)
  • 解决:使用layui.treeTable.updateNode,更新表格数据后,done里面的事件丢失问题
  • PHP 异步编程:从入门到精通
  • 使用 React Router v6 在 React 中实现面包屑
  • docker 部署nacos
  • uniapp路由跳转
  • 如何提高游戏本地化的质量使用QE门户网站Logrus IT
  • 线性代数:探索矩阵与向量的奥秘
  • Excel中查找某个值的位置,用位置取值
  • 迈威通信闪耀工博会,以创新科技赋能工业自动化
  • vue2的指令和过滤器