shuffle elements c++
To shuffle elements in C++, you can use the std::shuffle
function from the <algorithm>
library. Here are the steps involved:
- Include the necessary headers:
#include <algorithm> // for std::shuffle
#include <random> // for std::default_random_engine
#include <chrono> // for std::chrono::system_clock
- Create a random number generator engine:
std::default_random_engine rng(std::chrono::system_clock::now().time_since_epoch().count());
This line initializes the random number generator engine with a seed based on the current time.
- Define the range of elements to shuffle:
int elements[] = {1, 2, 3, 4, 5};
int numElements = sizeof(elements) / sizeof(elements[0]);
In this example, we have an array of integers elements
with 5 elements.
- Shuffle the elements:
std::shuffle(elements, elements + numElements, rng);
The std::shuffle
function takes three arguments: the start iterator of the range to be shuffled, the end iterator of the range to be shuffled, and the random number generator engine.
- Print the shuffled elements:
for (int i = 0; i < numElements; i++) {
std::cout << elements[i] << " ";
}
std::cout << std::endl;
This loop iterates over the shuffled elements
array and prints each element.
By following these steps, you can shuffle elements in C++ using the std::shuffle
function.