You are given an array of integers. Your task is to generate all possible permutations of the array. A permutation is formed by rearranging the elements in every possible order. Return all permutations of the array.
Example 1
Input: arr[] = [5]
Output: [5]
Explanation: Only one arrangement is possible.
Example 2
Input: arr[] = [1 2]
Output: [1 2] [2 1]
Explanation: The two elements can swap positions to form different orders.
Example 3
Input: arr[] = [1 2 3]
Output: [1 2 3] [1 3 2] [2 1 3] [2 3 1] [3 1 2] [3 2 1]
Explanation: All possible rearrangements of the three elements are generated.
Sign in to write, run, and submit your solution against the full test suite.