题目描述:
给定一个没有重复数字的序列,返回其所有可能的全排列。

示例:

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

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/permutations
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

解题代码:

class Solution {
public:vector<vector<int>> result;vector<vector<int>> permute(vector<int>& nums) {vector<int> dst(nums.size());queue<int> q;for(int i = 0; i < nums.size(); i++){q.push(i);}traverse(nums, dst, q, 0);return result;}void traverse(vector<int>& src, vector<int>& dst, queue<int>& q, int src_index){if(q.empty()){result.push_back(dst);return;}int dst_index;for(int i = 0; i < q.size(); i++){dst_index = q.front();q.pop();dst[dst_index] = src[src_index];traverse(src, dst, q, src_index + 1);q.push(dst_index);}}
};

运行结果:

LeetCode 46.全排列相关推荐

  1. LeetCode 46. 全排列(回溯)

    文章目录 1. 题目信息 2. 解题 2.1 利用hash map解决 2.2 改用bool数组判断是否出现过 1. 题目信息 给定一个没有重复数字的序列,返回其所有可能的全排列. 示例:输入: [1 ...

  2. leetcode —— 46. 全排列(递归+回溯)

    给定一个 没有重复 数字的序列,返回其所有可能的全排列. 示例: 输入: [1,2,3] 输出: [ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2 ...

  3. leetcode - 46. 全排列(对vector容器的元素进行搜索,判断是否存在vector中)

    给定一个没有重复数字的序列,返回其所有可能的全排列. 示例: 输入: [1,2,3] 输出: [ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1 ...

  4. leetcode 46 全排列

    难度:中等 频次:119 题目: 给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 .你可以 按任意顺序 返回答案. 解题思路:回溯遍历 class Solution {public ...

  5. Leetcode 46.全排列 (每日一题 20210621)

    给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 .你可以 按任意顺序 返回答案.示例 1:输入:nums = [1,2,3] 输出:[[1,2,3],[1,3,2],[2,1,3], ...

  6. leetcode 46. 全排列 思考分析

    目录 1.题目 2.思考 3.优化 1.题目 给定一个 没有重复 数字的序列,返回其所有可能的全排列. 2.思考 老规矩,先画出给出的例子的解空间树: 观察我们可以发现: 1.深度向下一层深入时,出现 ...

  7. leetcode — 46. 全排列(不含重复数字)

    给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 .你可以 按任意顺序 返回答案. 示例 1: 输入:nums = [1,2,3] 输出:[[1,2,3],[1,3,2],[2,1,3 ...

  8. LeetCode 46. 全排列 Permutations

    给定一个没有重复数字的序列,返回其所有可能的全排列. 示例: 输入: [1,2,3] 输出: [[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1] ] 您是 ...

  9. LeetCode 46——全排列

    1. 题目 2. 解答 给定一个序列,序列中的任意一个数字都可以作为全排列的最后一位.然后,其余位置元素的确定便是剩余元素的一个全排列,也就是一个子问题. 例子中 [1, 2, 3] 的全排列,最后一 ...

最新文章

  1. 关于我转生变成史莱姆这档事
  2. Java文件读取 中文乱码
  3. 译:9.使用Redis进行消息传递
  4. 实验心得_大肠杆菌原核表达实验心得(上篇)
  5. mybatis学习(1):【持久化框架】Mybatis简介与原理
  6. python读什么文件最快的软件_这些方法,能够让你的 Python 程序快如闪电
  7. C#服务启动以及服务指令
  8. 26期20180718 rsync
  9. md5后得到的32位字符串存储到mysql中太占空间了_面试官:你对MySQL高性能优化有什么规范建议?...
  10. 区块链:一场始料未及的革命
  11. Linux内存管理之vmalloc与low_memory
  12. 计算机程序丢失或损坏,电脑开机后出现winload.exe丢失或损坏异常的解决方法
  13. 如何破解锐捷支持多网卡
  14. 微信公众号被动回复消息 Java实现
  15. 基于单片机at89s52的频率计设计c语言程序,基于AT89S52单片机电子万年历设计(附程序,电路原理图)...
  16. mysql 绿色版的安装过程和配置
  17. 车载网络测试 - 车载以太网 - Tester和DUT的IP、MAC、Logical addr设置
  18. pg_bulkload
  19. lv的snapshot
  20. ble 读写特征值特征值_ap.readBLECharacteristicValue 读取低功耗蓝牙设备特征值中的数据 - 支付宝 Alipay JSSDK 开发文档...

热门文章

  1. TTS什么意思,缩写,微软TTS语音引擎(中文)5.1 “TTS”是“文本到语音(Text To Sound)”的简称
  2. 苹果平板怎么卸载软件_苹果手机需要关闭和卸载一些无用的软件
  3. oracle实现矩阵倒置,Oracle 倒置矩阵 与 大小写问题
  4. 算法初步——冒泡排序
  5. CSS cursor(鼠标状态)属性
  6. 2021年最新React状态管理解决方案
  7. 优化器optimizer,BGD、SGD、MBGD、NAG、AdaGrad、Adadelta、RMSProp、Adam
  8. css如何让图片全屏显示?
  9. 分享给有缘人——给明年依旧年轻的我们:欲望、外界、标签、天才、时间、人生目标、现实、懊悔、和经历...
  10. The Winter Is Coming