class Solution {
public:
vector<vector<int>> vec_vec_int;
vector<vector<int>> permute(vector<int>& nums) {
backtrack(nums, 0);
return vec_vec_int;
}
void backtrack(vector<int>& nums, int level){
vector<int> vec_int;
if(level == nums.size()){
vec_vec_int.push_back(nums);
return;
}
for(int i = level; i < nums.size(); i++){
swap(nums[i], nums[level]);
backtrack(nums, level + 1);
swap(nums[i], nums[level]);
}
}
};
Accepted
26/26 cases passed (4 ms)
Your runtime beats 69.4 % of cpp submissions
Your memory usage beats 55.35 % of cpp submissions (7.6 MB)