leetcode日记(36)全排列

想思路想了很久......思路对了应该会很好做。

我的思路是这样的:只变化前n个数字,不断增加n,由2到nums.size(),使用递归直到得到所有结果

代码如下:

cpp 复制代码
class Solution {
public:
    vector<vector<int>> permute(vector<int>& nums) {
        vector<vector<int>> v;
        v.push_back(nums);
        hs(v,1,nums);
        return v;
    }
    void hs(vector<vector<int>> &v,int n,vector<int> nums){
        if(n==nums.size()) return;
        int m=nums[n];
        nums.erase(nums.begin()+n);
        for(int i=n;i>=0;i--){
            nums.insert(nums.begin()+i,m);
            if(i!=n) v.push_back(nums);
            hs(v,n+1,nums);
            nums.erase(nums.begin()+i);
        }
    }
};
相关推荐
蓝色汪洋2 小时前
xtu oj矩阵
算法
hh随便起个名8 小时前
力扣二叉树的三种遍历
javascript·数据结构·算法·leetcode
Dingdangcat869 小时前
城市交通多目标检测系统:YOLO11-MAN-FasterCGLU算法优化与实战应用_3
算法·目标检测·目标跟踪
xie_pin_an10 小时前
深入浅出 C 语言数据结构:从线性表到二叉树的实战指南
c语言·数据结构·图论
tang&10 小时前
滑动窗口:双指针的优雅舞步,征服连续区间问题的利器
数据结构·算法·哈希算法·滑动窗口
拼命鼠鼠10 小时前
【算法】矩阵链乘法的动态规划算法
算法·矩阵·动态规划
LYFlied10 小时前
【每日算法】LeetCode 17. 电话号码的字母组合
前端·算法·leetcode·面试·职场和发展
式51611 小时前
线性代数(八)非齐次方程组的解的结构
线性代数·算法·机器学习
Nandeska11 小时前
2、数据库的索引与底层数据结构
数据结构·数据库
橘颂TA12 小时前
【剑斩OFFER】算法的暴力美学——翻转对
算法·排序算法·结构与算法