Code360 powered by Coding Ninjas X Naukri.com. Code360 powered by Coding
Ninjas X Naukri.com

Problem of the day

A permutation is a mathematical technique that determines the number of possible arrangements in a set when the order of the arrangements matters. A string of length 'N' has 'N'! permutations.

Given an array of distinct integers, return all the possible permutations of the array.

```
'ARR[]' = [1, 2]
The size of the array is 2. So, the total number of permutations is 2! = 2. The possible permutations are [1, 2] (the array itself) and [2,1] where the position of element 1 in the original array is swapped with element 2 and vice-versa.
```

```
1. All the numbers in the array are unique.
2. You can return the answer in any order.
3. The original array is also a permutation of the given array.
```

Detailed explanation

```
1 <= T <= 10
1 <= N <= 7
-10 ^ 9 <= ARR[i] <= 10 ^ 9
Where ‘ARR[i]’ denotes the range of elements in the array.
Time limit: 1 sec
```

```
2
3
1 2 3
1
1
```

```
1 2 3 1 3 2 2 1 3 2 3 1 3 1 2 3 2 1
1
```

```
In test case 1, For [1,2,3], size of the array is 3. Therefore, number of permutations is 3!= 6. The possible 6 permutations are [[1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1]].
In test case 2, For [1], the size of the array is 1. Therefore, the number of permutations is 1!= 1. The only possible permutation is [1].
```

```
2
2
0 1
3
4 5 6
```

```
0 1 1 0
4 5 6 4 6 5 5 4 6 5 6 4 6 4 5 6 5 4
```

```
In test case 1, For [0, 1], size of the array is 2. Therefore, number of permutations is 2! = 2. The possible 2 permutations are [[0, 1], [1, 0]].
In test case 2, For [4, 5, 6], the size of the array is 3. Therefore, the number of permutations is 3! = 6. The possible 6 permutations are [[4, 5, 6], [4, 6, 5], [5, 4, 6], [5, 6, 4], [6, 4, 5], [6, 5, 4]].
```