leetcode-46全排列[通俗易懂]

leetcode-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,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;
    }
};
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/169161.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 机房收费系统————导出到Excel

    机房收费系统————导出到Excel机房收费系统————导出到Excel

  • 最详细动态规划解析——背包问题

    最详细动态规划解析——背包问题动态规划的定义要解决一个复杂的问题,可以考虑先解决其子问题。这便是典型的递归思想,比如最著名的斐波那契数列,讲递归必举的例子。斐波纳契数列的定义如下:F(0)=1,F(1)=1,F(n)=F(n-1)+F(n-2)(n>=2,n∈N*)用递归可以很快写出这样一个函数,咋一看真牛逼,几行代码就搞定了intfib(inti){if(i<=1){ret

  • idea 2021.11.3激活【最新永久激活】

    (idea 2021.11.3激活)JetBrains旗下有多款编译器工具(如:IntelliJ、WebStorm、PyCharm等)在各编程领域几乎都占据了垄断地位。建立在开源IntelliJ平台之上,过去15年以来,JetBrains一直在不断发展和完善这个平台。这个平台可以针对您的开发工作流进行微调并且能够提供…

  • ubuntu开机进入tty1_ubuntu tty模式

    ubuntu开机进入tty1_ubuntu tty模式1、一个作为宿主机的Linux;本文使用的是RedhatEnterpriseLinux5.4;2、在宿主机上提供一块额外的硬盘作为新系统的存储盘,为了降低复杂度,这里添加使用一块IDE接口的新硬盘;3、Linux内核源码,busybox源码;本文使用的是目前最新版的linux-2.6.34.1和busybox-1.16.1。说明:本文是一个stepbystep的…

  • idea全局搜索快捷键总结

    一、Ctrl+F或者Ctrl+Shift+R按照文本的内容查找1、相当于eclipse的ctrl+H,Ctrl+F是在本页查找2、相当于eclipse的ctrl+H,Ctrl+Shift+R是全局查找二、Ctrl+Shift+N按文件名搜索文件同搜索类类似,只不过可以匹配所有类型的文件了三、Ctrl+H查看类的继承关系四、Alt+F7查找类或方法在哪被使用五、Sh…

  • Tomcat安装及环境配置(详细教程)

    Tomcat安装及环境配置(详细教程)Tomcat安装及环境配置(详细教程)tomcat下载及安装1、进入官网www.apache.org,找到Projects中的projectList找到tomcatDownload下边的版本,这里最新的是10.0x,但是一般不选最新版本,我选择的是8.5x,所以点击Download下边的Tomcat8这里我选择了64位的Windows版本,根据自己的需求下载。(建议:最好别放到C盘)下载之后,解压配置环境变量系统变量添加变量:变量名:CATAL..

发表回复

您的电子邮箱地址不会被公开。

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