How to shuffle a vector in C++

1 Answer

0 votes
#include <iostream>
#include <vector>
#include <random>
#include <algorithm>
#include <chrono>

using std::cout;
using std::endl;

int main()
{
	std::vector<int> vec(10);

	std::mt19937 gen(std::chrono::system_clock::now().time_since_epoch().count());

	for (int i = 0; i < 10; i++)
		vec[i] = i;

	std::shuffle(vec.begin(), vec.end(), gen);

	for (auto i : vec) {
		cout << i << " ";
	}

	cout << endl;

	return 0;
}


/*
run:

4 9 8 2 7 0 1 5 3 6

*/

 



answered Feb 20, 2018 by avibootz

Related questions

1 answer 278 views
278 views asked Feb 19, 2018 by avibootz
1 answer 187 views
187 views asked Jan 5, 2023 by avibootz
1 answer 151 views
151 views asked Nov 4, 2024 by avibootz
2 answers 290 views
290 views asked Nov 1, 2021 by avibootz
2 answers 322 views
1 answer 269 views
269 views asked Feb 20, 2018 by avibootz
1 answer 254 views
254 views asked Feb 19, 2018 by avibootz
...