アレイをランダムに反復する他の方法はありますか？
すべてはあなたのプログラムの要件によります。以下は、あなたが探しているかもしれない潜在的な要件です。

- 特定の要素が何度もアクセスされたり、見逃されたりしても気にしないのであれば、データをシャッフルする必要はない。次のように乱数を使用してデータにアクセスするだけです。arr[rand()%size]`。
- もし、元の配列を変更したくないのであれば、配列を複製して、このデータに対してシャッフルを行うこともできる。もう一つの方法は、インデックスの配列を作成し、インデックスをシャッフルすることです。これは次のようになる。
```
int indexes[size];//create index array
for (int i = 0;i<size;i++) indexes[i] = i;//initialize with each possible index
shuffle(indexes,size);//shuffle the indexes
```
要素にアクセスするときは、`arr[indexes[i]]`とする。

- シャッフルアルゴリズムの実装を気にせず、より簡潔なコードを作りたいのであれば、**<アルゴリズム>**ライブラリの**std::random_shuffle**アルゴリズムを使うことができる。

もし他に必要なものがあれば教えてください！