C# || How To Generate Next Permutation From Array Using C#

The following is a module with functions which demonstrates how to generate the next permutation from an array using C#.


1. Next Permutation – Problem Statement

Implement next permutation, which rearranges numbers into the lexicographically next greater permutation of numbers.

If such an arrangement is not possible, it must rearrange it as the lowest possible order (i.e., sorted in ascending order).

The replacement must be in place and use only constant extra memory.

Example 1:


Input: nums = [1,2,3]
Output: [1,3,2]

Example 2:


Input: nums = [3,2,1]
Output: [1,2,3]

Example 3:


Input: nums = [1,1,5]
Output: [1,5,1]

Example 4:


Input: nums = [1]
Output: [1]


2. Next Permutation – Solution

The following is a solution which demonstrates how to generate the next permutation from an array

QUICK NOTES:
The highlighted lines are sections of interest to look out for.

The code is heavily commented, so no further insight is necessary. If you have any questions, feel free to leave a comment below.

Once compiled, you should get this as your output for the example cases:


[1,3,2]
[1,2,3]
[1,5,1]
[1]

Was this article helpful?
👍 YesNo

One Response to C# || How To Generate Next Permutation From Array Using C#

Leave a Reply