1. 题目描述
给定一个可包含重复数字的序列 nums ,按任意顺序 返回所有不重复的全排列。
  1. 题解
注意这里只有在不相等的时候才进行交换。
  1. 代码
class Solution {public:vector<vector<int>> permuteUnique(vector<int>& nums) {int len=nums.size();if (!len) return vector<vector<int>>(0);dfs(0,len,nums);return res;}void dfs(int step,int len,vector<int>& nums){if (step==len){res.push_back(nums);return ;}for (int i=step;i<len;i++){bool f=true;for (int j=i+1;j<len;j++){if (nums[j]==nums[i]){f=false;break;}}if (i==step||(nums[i]!=nums[step]&&f)){swap(nums[i],nums[step]);dfs(step+1,len,nums);swap(nums[i],nums[step]);}}}vector<vector<int>> res;
};

LeetCode 47 全排列 II相关推荐

  1. [LeetCode]47. 全排列 II

    47. 全排列 II 难度中等761收藏分享切换为英文接收动态反馈 给定一个可包含重复数字的序列 nums ,按任意顺序 返回所有不重复的全排列. 示例 1: 输入:nums = [1,1,2] 输出 ...

  2. LeetCode 47. 全排列 II【数组,回溯算法,排序去重】

    47. 全排列 II 给定一个可包含重复数字的序列 nums ,按任意顺序 返回所有不重复的全排列. 示例 1: 输入:nums = [1,1,2] 输出: [[1,1,2], [1,2,1], [2 ...

  3. LeetCode 47 全排列 II -- 回溯法

    来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/permutations-ii 题意: 给定一个可包含重复数字的序列 nums ,按任意顺序 返 ...

  4. LeetCode 47. 全排列 II

    文章目录 解法1:回溯 + 剪枝 牛客网的全排列 https://leetcode-cn.com/problems/permutations-ii/ 难度:中等   给定一个可包含重复数字的序列,返回 ...

  5. leetcode 47. 全排列 II 思考分析

    题目 给定一个可包含重复数字的序列 nums ,按任意顺序 返回所有不重复的全排列. 思考分析以及代码 这一题和前面的做过的两个题目有所关联: leetcode 46. 全排列 思考分析 再加上lee ...

  6. LeetCode 47. 全排列 II(回溯+搜索剪枝)

    文章目录 1. 题目信息 2. 解题 1. 题目信息 给定一个可包含重复数字的序列,返回所有不重复的全排列. 示例:输入: [1,1,2] 输出: [[1,1,2],[1,2,1],[2,1,1] ] ...

  7. Leetcode 47. 全排列 II (每日一题 20211015)

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

  8. 2022-2-23 Leetcode 47.全排列 II

    重点在于剪枝,这个和 组合总和 的剪枝类似. class Solution {vector<int> vis;public:void backtrack(vector<int> ...

  9. 136. Leetcode 47. 全排列 II (回溯算法-排列问题)

    class Solution:def permuteUnique(self, nums: List[int]) -> List[List[int]]:if not nums:return []r ...

最新文章

  1. usermod命令,用户密码管理和mkpasswd命令
  2. 嵌入式jetty --- 转载
  3. 创建目录_聊聊Word创建目录那些事儿
  4. 我的一个windows phone program
  5. 推荐一款轻量级好用的开源PDF阅读器,确实好用~
  6. 1一9数字行书写法_阿拉伯数字怎么写好看(数字1到10的漂亮手写体)
  7. 解决打开WORD时提示的:“无法复制文件:无法读源文件或磁盘”
  8. 数据介绍与描述性分析——以NBA球员薪酬影响因素分析为例
  9. RT-Thread 学习文档
  10. 14期《未来,我来》1月刊
  11. Java并发编程:并发和并行
  12. android连路由器 mtu,解决app无网络问题,将宽带路由器MTU从1500修改成1480
  13. glob.glob()
  14. Python-random函数用法
  15. 嘻哈说:设计模式之单一职责原则
  16. #双11故事联播#守护篇| 支付王牌军-我们如何从容应对双11?
  17. Nessus详细安装教程(Windows版)
  18. 从区块链到DAG(五)--DAG项目介绍IOTA和Obyte
  19. Java:如果优雅地打印出完美日志
  20. android view 半透明图片,Android ImageView 图片设置为透明

热门文章

  1. 华为鸿蒙5g售价,华为5G新旗舰已确认,双曲面屏+升级到鸿蒙2.0,价格很感人
  2. 王俊和尹玉新团队合作开发代谢组联合人工智能肺癌早期检测新方法
  3. 用了都说好的SCI在线绘图工具来了~~~~~~~
  4. Deep Glow for mac(AE高级辉光特效插件)支持ae2021
  5. 把字符串变为变量_python学习第10课--列表和字符串的可变性
  6. 基础省选+NOI-第4部分 动态规划
  7. anjular.js读取数据库数据调用实例
  8. 计算机名生成,如何让输出的文本名字自动生成计算机名字?
  9. shell批量修改后缀_bash批量修改文件名称的方法小结(增加,去除,修改后缀)
  10. Vue第一部分(4):表单的双向数据绑定:v-model指令