How to Shuffle an Array in C# - Step by Step Examples



How to Shuffle an Array in C# ?

Answer

In C#, you can shuffle an array using the Fisher-Yates shuffle algorithm.



✐ Examples

1 Shuffle Array of Integers

In this example,

  1. We have an array named intArray containing integers.
  2. We apply the Fisher-Yates shuffle algorithm to intArray.
  3. We print the shuffled array to demonstrate the shuffling.

C# Program

using System;
using System.Linq;
class Program
{
    static void Main()
    {
        int[] intArray = { 1, 2, 3, 4, 5 };
        Random rng = new Random();
        int n = intArray.Length;
        while (n > 1)
        {
            n--;
            int k = rng.Next(n + 1);
            int value = intArray[k];
            intArray[k] = intArray[n];
            intArray[n] = value;
        }
        Console.WriteLine("Shuffled Array: " + string.Join(" ", intArray));
    }
}

Output

Shuffled Array: 3 5 2 4 1

2 Shuffle Array of Strings

In this example,

  1. We have an array named strArray containing strings.
  2. We apply the Fisher-Yates shuffle algorithm to strArray.
  3. We print the shuffled array to demonstrate the shuffling.

C# Program

using System;
using System.Linq;
class Program
{
    static void Main()
    {
        string[] strArray = { "apple", "banana", "cherry" };
        Random rng = new Random();
        int n = strArray.Length;
        while (n > 1)
        {
            n--;
            int k = rng.Next(n + 1);
            string value = strArray[k];
            strArray[k] = strArray[n];
            strArray[n] = value;
        }
        Console.WriteLine("Shuffled Array: " + string.Join(" ", strArray));
    }
}

Output

Shuffled Array: cherry apple banana

Summary

In this tutorial, we learned How to Shuffle an Array in C# language with well detailed examples.




More C# Arrays Tutorials

  1. How to Declare an Array in C# ?
  2. How to Initialize an Array in C# ?
  3. How to Access Array Elements in C# ?
  4. How to Access Array Elements using Index in C# ?
  5. How to get First Element in Array in C# ?
  6. How to get Last Element in Array in C# ?
  7. How to check if an Array is Empty in C# ?
  8. How to check if an Array is Not Empty in C# ?
  9. How to get Sub Array in C# ?
  10. How to Get Array Length in C# ?
  11. How to Iterate Over an Array in C# ?
  12. How to Iterate Over an Array in Reverse Order in C# ?
  13. How to get the Index of Specified Element in an Array in C# ?
  14. How to check if Specified Element is present in the Array in C# ?
  15. How to count the Number of Occurrences of Specified Element in the Array in C# ?
  16. How to Sort an Array in C# ?
  17. How to Sort an Array in Ascending Order in C# ?
  18. How to Sort an Array in Descending Order in C# ?
  19. How to create a Two Dimensional Array in C# ?
  20. How to Iterate over a Two Dimensional Array in C# ?
  21. How to create a Three Dimensional Array in C# ?
  22. How to Copy an Array in C# ?
  23. How to Split an Array in C# ?
  24. How to Join Arrays in C# ?
  25. How to check if Two Arrays are Equal in C# ?
  26. How to check if Two Arrays have Same Elements (Regardless of Order) in C# ?
  27. How to Convert an Array of Integers to an Array of Strings in C# ?
  28. How to Convert an Array of Strings to an Array of Integers in C# ?
  29. How to Reverse an Array in C# ?
  30. How to Shuffle an Array in C# ?
  31. How to Rotate Elements in an Array in C# ?
  32. How to Filter Elements of an Array based on a Condition in C# ?
  33. How to Declare an Integer Array in C# ?
  34. How to Declare a Float Array in C# ?
  35. How to Declare a String Array in C# ?
  36. How to Remove Duplicates in an Array in C# ?
  37. How to Remove Specific Element from an Array in C# ?
  38. How to Remove Element from Array based on a Condition in C# ?
  39. How to Sort a String Array in Dictionary Order in C# ?
  40. How to Concatenate Strings in Array in C# ?