diff options
Diffstat (limited to 'works/solutions/leetcode/cpp/46.cpp')
-rw-r--r-- | works/solutions/leetcode/cpp/46.cpp | 34 |
1 files changed, 0 insertions, 34 deletions
diff --git a/works/solutions/leetcode/cpp/46.cpp b/works/solutions/leetcode/cpp/46.cpp deleted file mode 100644 index bfb3c83..0000000 --- a/works/solutions/leetcode/cpp/46.cpp +++ /dev/null @@ -1,34 +0,0 @@ -#include <vector> - -using std::vector; - -class Solution { -public: - void dfs(const vector<int> &nums, vector<int> ¤t, bool *num_used, - vector<vector<int>> &result) { - if (current.size() == nums.size()) { - result.push_back(current); - return; - } - - for (int i = 0; i < nums.size(); i++) { - if (!num_used[i]) { - num_used[i] = true; - current.push_back(nums[i]); - dfs(nums, current, num_used, result); - current.pop_back(); - num_used[i] = false; - } - } - } - - vector<vector<int>> permute(vector<int> &nums) { - vector<int> current; - vector<vector<int>> result; - bool *num_used = new bool[nums.size()]{false}; - dfs(nums, current, num_used, result); - delete[] num_used; - - return result; - } -}; |