どうも、ちょげ(@chogetarou)です。
random_shuffle()を使ってVectorの要素をシャッフルしてランダムに並び替える方法を紹介します。
方法

random_shuffle()を使ってVectorの要素をシャッフルしてランダムに並び替えるには、2つの引数を使います。
まず、algorithmをインクルードします。
#include <algorithm>
次に、random_shuffle()を呼び出します。
そして、random_shuffle()の第1引数にVectorのイテレータの先頭、第2引数にVectorのイテレータの末尾を指定します。
//myVec=対象のVector
random_shuffle(myVec.begin(), myVec.end());
上記のrandom_shuffle()は、Vectorの要素をシャッフルしてランダムに並び替えます。
使用例
#include <iostream>
#include <vector>
#include <algorithm>
#include <ctime>
using namespace std;
int main(void){
vector<string> nums = { "one", "two", "three", "four", "five"};
random_shuffle(nums.begin(), nums.end());
for(string item: nums) {
cout << item << endl;
}
return 0;
}
出力:
five
four
two
three
one
コメント