输入一组数字(可能包含重复数字),输出其所有的排列方式。

class Solution {
public:
    vector<bool> st;
    vector<int> path;
    vector<vector<int>> ans;

    vector<vector<int>> permutation(vector<int>& nums) {
        sort(nums.begin(), nums.end());
        st = vector<bool>(nums.size(), false);
        path = vector<int>(nums.size());
        dfs(nums, 0, 0);
        return ans;
    }

    void dfs(vector<int>& nums, int u, int start)
    {
        if (u == nums.size())
        {
            ans.push_back(path);
            return;
        }

        for (int i = start; i < nums.size(); i ++ )
            if (!st[i])
            {
                st[i] = true;
                path[i] = nums[u];
                if (u + 1 < nums.size() && nums[u + 1] != nums[u])
                    dfs(nums, u + 1, 0);
                else
                    dfs(nums, u + 1, i + 1);
                st[i] = false;
            }
    }

};

相关推荐

  1. 数据输入输出(C++)

    2024-04-05 12:36:04       41 阅读
  2. 数据输入

    2024-04-05 12:36:04       19 阅读
  3. input 输入框只能输入数字处理方式

    2024-04-05 12:36:04       9 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-05 12:36:04       19 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-05 12:36:04       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-05 12:36:04       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-05 12:36:04       20 阅读

热门阅读

  1. 接龙序列(动态规划c++实现)

    2024-04-05 12:36:04       16 阅读
  2. golang channel实践代码及注意事项

    2024-04-05 12:36:04       15 阅读
  3. CentOS 使用 Cronie 实现定时任务

    2024-04-05 12:36:04       14 阅读
  4. 代码随想录-图论

    2024-04-05 12:36:04       13 阅读
  5. spring boot admin服务端配置邮件通知、钉钉通知

    2024-04-05 12:36:04       13 阅读
  6. 关于c# 没有显式头文件的优劣分析

    2024-04-05 12:36:04       13 阅读
  7. MD5加密返回32位密文字符串

    2024-04-05 12:36:04       12 阅读
  8. 什么是中间件

    2024-04-05 12:36:04       11 阅读
  9. Vue框架介绍简介

    2024-04-05 12:36:04       10 阅读
  10. C语言二进制常用逻辑运算符介绍与使用

    2024-04-05 12:36:04       14 阅读
  11. Vue中生成二维码,使用现有的二维码库qrcode

    2024-04-05 12:36:04       12 阅读
  12. 业务架构的四大核心元素

    2024-04-05 12:36:04       11 阅读