46 전체 정렬
5941 단어 Leetcode
//
class Solution {
int n;
unordered_map<int, bool> vis;
vector<int> p;
vector<vector<int>> ans;
public:
// ,
void generate(int index, const vector<int>& nums)
{
if(index == n) //
{
ans.push_back(p);
return;
}
for(auto i : nums) // ,
{
if(vis[i] == false)
{
p.push_back(i);
vis[i] = true; //
generate(index + 1, nums);
vis[i] = false; // ,
p.pop_back();
}
}
}
vector<vector<int>> permute(vector<int>& nums) {
n = nums.size();
for(int i : nums) vis[i] = false;
generate(0, nums);
return ans;
}
};
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
leetcode 637. 두 갈래 나무의 층 평균치비공 두 갈래 나무를 정하고 각 층 노드의 평균값으로 구성된 그룹을 되돌려줍니다. 예 1: 참고: 노드 값의 범위는 32비트 기호 정수 범위 내에.....
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.