shuffleを実装
ちょくちょく使うのに標準の実装には含まれていないんですね。Stackoverflowの例を参考に関数を作りました。引数の配列そのものを並べ替えるので値の渡し方に注意してください。
func shuffle<T>(inout array: [T]) {
for i in 0..<array.count - 1 {
let j = Int(arc4random_uniform(UInt32(array.count - i))) + i
guard i != j else { continue }
swap(&array[i], &array[j])
}
}
Qiitaで見つけた方は、以下のようなエラーが出て使えませんでした。
wapping a location with itself is not supported
参考URL
この記事は役に立ちましたか?
- EnglishWorm.com
- SinglesFan.com
- LmLab.net
- サイトマップ
- 運営者について