Skip to content

Commit 8e07afc

Browse files
author
Kowsihan-sk
committed
added permutation_2 problem
1 parent bcbf3d9 commit 8e07afc

File tree

1 file changed

+32
-0
lines changed

1 file changed

+32
-0
lines changed

Arrays/(LEETCODE) permutation_2.cpp

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
class Solution {
2+
public:
3+
void dfs(vector<int> v, vector<int> &nums, unordered_map<int, int> &mp, vector<vector<int>> &ans){
4+
if(v.size() == nums.size()){
5+
ans.push_back(v);
6+
return;
7+
}
8+
9+
for(auto i : mp){
10+
if(i.second > 0){
11+
v.push_back(i.first);
12+
mp[i.first]--;
13+
14+
dfs(v, nums, mp, ans);
15+
16+
mp[i.first]++;
17+
v.pop_back();
18+
}
19+
}
20+
}
21+
22+
vector<vector<int>> permuteUnique(vector<int>& nums) {
23+
vector<vector<int>> ans;
24+
unordered_map<int, int> mp;
25+
26+
for(int i = 0; i < nums.size(); i++) mp[nums[i]]++;
27+
28+
dfs({}, nums, mp, ans);
29+
30+
return ans;
31+
}
32+
};

0 commit comments

Comments
 (0)