class Solution {
public:
vector<vector<int>> res;
bool contain(vector<int>&nums,int a)
{
for(int i=0;i<nums.size();i++)
{
if(nums[i]==a)
return true;
}
return false;
}
void trace(vector<int>& nums,vector<int>& temp)
{
if(temp.size()==nums.size())
{
res.push_back(temp);
return;
}
for(int i=0;i<nums.size();i++)
{
if(contain(temp,nums[i]))
continue;
temp.push_back(nums[i]);
trace(nums,temp);
temp.pop_back();
}
}
vector<vector<int>> permute(vector<int>& nums)
{
vector<int> temp;
trace(nums,temp);
return res;
}
};
46--全排列 难度:中等 回溯法
最新推荐文章于 2021-03-03 23:15:18 发布