全排列 leetcode_leetcode top100

全排列 leetcode_leetcode top100原题链接给定一个 没有重复 数字的序列,返回其所有可能的全排列。示例:输入: [1,2,3]输出:[ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1]]题解回溯即可class Solution {public: vector<vector<int> >res; vector<int>t; void dfs(int num,int len,vecto

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

原题链接
给定一个 没有重复 数字的序列,返回其所有可能的全排列。

示例:

输入: [1,2,3]
输出:
[
  [1,2,3],
  [1,3,2],
  [2,1,3],
  [2,3,1],
  [3,1,2],
  [3,2,1]
]

题解
回溯即可

class Solution { 
   
public:
    vector<vector<int> >res;
    vector<int>t;
    void dfs(int num,int len,vector<int> &vis,vector<int>nums){ 
   
        if(num == len){ 
   
            res.push_back(t);
            return;
        }
        for(int i = 0;i < len;i ++){ 
   
            if(vis[i])continue;
            vis[i] = true;
            t.push_back(nums[i]);
            dfs(num + 1,len,vis,nums);
            vis[i] = false;
            t.pop_back();
        }
    }
    vector<vector<int>> permute(vector<int>& nums) { 
   
        vector<int>vis(nums.size(),false);
        dfs(0,nums.size(),vis,nums);
        return res;
    }
};
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/168719.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • linux ll命令无效

    linux ll命令无效1.编辑~/.bashcvim~/.bashc若vi/vim命令无效,参考bash:vi:commandnotfound/bash:vim:commandnotfound2.重新执行刚修改的初始化文件source~/.bashc

    2022年6月23日
    31
  • java软件工程师和java开发工程师区别_软件测试工程师

    java软件工程师和java开发工程师区别_软件测试工程师有很多朋友只知道“软件工程师”这个五个字是一个职业,并不清楚这个职业具体的诸多事情,而对于“java工程师”这个职业应该就更为陌生了。其实因为这个充满网络和数据的信息时代,人们对这种新兴的职业已经不是那么陌生了,甚至因为良好的发展态势和不错的薪资待遇吸引来了很多的人,想要学习java和软件技术并进而从事这两个职位。今天就来和大家科普一下java工程师和软件工程师的关系是什么,二者各自具体的工作性质和岗位职责是什么,帮有想了解java工程师和软件工程师的朋友们解答疑惑,能更好的认识这两个职位。首先来说软件工

    2022年9月23日
    4
  • 2021广西高考成绩排名查询,2020广西高考成绩排名,一分一段表,分数段排位查询,五分段统计表_一品高考网…「建议收藏」

    2021广西高考成绩排名查询,2020广西高考成绩排名,一分一段表,分数段排位查询,五分段统计表_一品高考网…「建议收藏」广西高考成绩排名,一分一段统2020年理工类一分一档表(总分=总成绩+全国性加分和地方性加分的…2019年文史+音乐类本科一分一档表(总分=总成绩+全国性加分)说…2019年文史+书法类本科一分一档表(总分=总成绩+全国性加分)说…2019广西高考美术类本科,专科一分一档表(总分=总成绩+全国性加…2019年广西高考体育类本科,专科一分一档表(总分=总成绩+全国性…2019…

    2025年11月9日
    6
  • COM、COM+和DCOM的定义和区别

    COM、COM+和DCOM的定义和区别解释 COM COM 和 DCOM 的定义和区别 COM 是组件对象模型 是实现 3 N 层应用的基础 它的目的就是组件化 应用程序分层 DCOM 是分布式的 COM 也就说可以远程的创建 最初它利用远程自动化来实现 用注册 VBR 的方法来配置客户端 来适应 DCOM 服务器 COM 现在的概念不很清楚 因为它是一个扩展集 MS 现在的 MTS 取代了远程自动化这种原始的功能很弱的方法后 他们似乎已经都是一个集合体

    2025年7月9日
    3
  • Redis哨兵模式主从同步不可以绑定127.0.0.1或者0.0.0.0,不然无法进行主从同步

    Redis哨兵模式主从同步不可以绑定127.0.0.1或者0.0.0.0,不然无法进行主从同步

    2021年6月6日
    92
  • ExtJs自学教程(1):从一切API开始

    ExtJs自学教程(1):从一切API开始

    2021年12月17日
    35

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号