全排列 leetcode_8的全排列

全排列 leetcode_8的全排列原题链接给定一个 没有重复 数字的序列,返回其所有可能的全排列。示例:输入: [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/168879.html原文链接:https://javaforall.net

(0)
上一篇 2022年8月9日 上午8:46
下一篇 2022年8月9日 上午9:00


相关推荐

  • markdown 画流程图

    markdown 画流程图一直在用 markdown 不得不说 markdown 语法真的太强大太简洁了 效果也太优美 没学过 markdown 语法的可以自己学下 写东西 知道用 markdown 可以画出来很性感的流程图 遂决定学下如何用 markdown 来画流程图 代码 flowst gt start Startop gt operation YourOperatio gt condi

    2026年3月18日
    2
  • “代码雨”纯HTML源码实现及效果

    “代码雨”纯HTML源码实现及效果先看看效果 1 绿色 2 彩色 3 背景色 4 绿色逐渐变浅 源代码 DOCTYPE tml html head metahttp equiv Content Type content text html charset utf 8 quot metahttp equiv Content Type content text head html

    2026年3月20日
    0
  • Haystack的安装与使用

    Haystack的安装与使用1 什么是 HaystackHays 是 django 的开源全文搜索框架 全文检索不同于特定字段的模糊查询 使用全文检索的效率更高 该框架支持 Solr Elasticsearc Whoosh Xapian 搜索引擎它是一个可插拔的后端 很像 Django 的数据库层 所以几乎你所有写的代码都可以在不同搜索引擎之间便捷切换全文检索不同于特定字段的模糊查询 使用全文检索的效率更高 并且

    2025年12月15日
    7
  • PyCharm 菜单栏隐藏后如何恢复?

    PyCharm 菜单栏隐藏后如何恢复?PyCharm 菜单栏隐藏后如何恢复 为节省屏幕空间 用 PyCharm 菜单 View 把菜单栏隐藏了 后觉的不便 摸索了很久才找到恢复的办法 功双击左 Shift 键 出 搜索 弹出窗口 输入 View 中文或是 视图 可以搜出 View 点击 View 进入 View 菜单 选择显示菜单栏即可

    2026年3月27日
    2
  • 预测算法——指数平滑法

    预测算法——指数平滑法nbsp 目录 1 指数平滑定义及公式 2 一次指数平滑 3 二次指数平滑 4 三次指数平滑 5 指数平滑系数 的确定 1 指数平滑的定义及公式 nbsp nbsp nbsp nbsp 产生背景 指数平滑由布朗提出 他认为时间序列的态势具有稳定性或规则性 所以时间序列可被合理地顺势推延 他认为最近的过去态势 在某种程度上会持续的未来 所以将较大的权数放在最近的资料 nbsp nbsp nbsp nbsp 基本原理 指数平滑法是移动平均法中的一种 其特点在于给过去的

    2026年3月18日
    2
  • 开发微信公众号步骤_微信公众平台开发

    开发微信公众号步骤_微信公众平台开发磨刀不误砍柴工微信公众号大家肯定都用过。目前微信公众号主要分为订阅号和服务号,每种账号又分为未认证和已认证,它们的差别主要在于具有不同的接口权限,下图(引用自微信开发实战系列)是一些例子:不同类型公众号的权限总体来说,服务号权限>订阅号权限,认证账号权限>未认证账号权限。申请订阅号比较简单,服务号相对复杂点,另外要认证的话还要额外提交一些材料。我们可以根据不同的业务需求去申请不同类型的账号,基本上常用的权限列表已经可以满足大部分的场景。开发微信公众号本质上和通常.

    2026年4月17日
    4

发表回复

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

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