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,
- We have an array named
intArray
containing integers. - We apply the Fisher-Yates shuffle algorithm to
intArray
. - 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,
- We have an array named
strArray
containing strings. - We apply the Fisher-Yates shuffle algorithm to
strArray
. - 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
- How to Declare an Array in C# ?
- How to Initialize an Array in C# ?
- How to Access Array Elements in C# ?
- How to Access Array Elements using Index in C# ?
- How to get First Element in Array in C# ?
- How to get Last Element in Array in C# ?
- How to check if an Array is Empty in C# ?
- How to check if an Array is Not Empty in C# ?
- How to get Sub Array in C# ?
- How to Get Array Length in C# ?
- How to Iterate Over an Array in C# ?
- How to Iterate Over an Array in Reverse Order in C# ?
- How to get the Index of Specified Element in an Array in C# ?
- How to check if Specified Element is present in the Array in C# ?
- How to count the Number of Occurrences of Specified Element in the Array in C# ?
- How to Sort an Array in C# ?
- How to Sort an Array in Ascending Order in C# ?
- How to Sort an Array in Descending Order in C# ?
- How to create a Two Dimensional Array in C# ?
- How to Iterate over a Two Dimensional Array in C# ?
- How to create a Three Dimensional Array in C# ?
- How to Copy an Array in C# ?
- How to Split an Array in C# ?
- How to Join Arrays in C# ?
- How to check if Two Arrays are Equal in C# ?
- How to check if Two Arrays have Same Elements (Regardless of Order) in C# ?
- How to Convert an Array of Integers to an Array of Strings in C# ?
- How to Convert an Array of Strings to an Array of Integers in C# ?
- How to Reverse an Array in C# ?
- How to Shuffle an Array in C# ?
- How to Rotate Elements in an Array in C# ?
- How to Filter Elements of an Array based on a Condition in C# ?
- How to Declare an Integer Array in C# ?
- How to Declare a Float Array in C# ?
- How to Declare a String Array in C# ?
- How to Remove Duplicates in an Array in C# ?
- How to Remove Specific Element from an Array in C# ?
- How to Remove Element from Array based on a Condition in C# ?
- How to Sort a String Array in Dictionary Order in C# ?
- How to Concatenate Strings in Array in C# ?