Generate Permutations

Medium~20 min

Given an array of distinct integers nums, return all possible permutations. You can return the answer in any order.

A permutation is a rearrangement of all elements. For an array of length n, there are n! (n factorial) permutations.

For example, [1, 2, 3] has 6 permutations: [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1]

You must solve this problem recursively.

Examples

Example 1
Input: nums = [1, 2, 3]
Output: [[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]
Explanation: There are 3! = 6 permutations of three distinct elements.
Example 2
Input: nums = [0, 1]
Output: [[0,1],[1,0]]
Explanation: There are 2! = 2 permutations of two elements.
Example 3
Input: nums = [1]
Output: [[1]]
Explanation: A single element has exactly one permutation.

Constraints

  • 1 <= nums.length <= 6
  • -10 <= nums[i] <= 10
  • All integers in nums are unique
  • You must use recursion
Code
Ctrl+EnterRun|Ctrl+⇧+EnterSubmit
Output

Run your code to see results

Use Cmd+Enter to run