- shuffle()メソッドを使用する方法: SwiftのArray型には、shuffle()メソッドが用意されています。これを使用すると、配列の要素がランダムにシャッフルされます。
var array = [1, 2, 3, 4, 5]
array.shuffle()
print(array) // シャッフルされた配列が出力される
- フィッシャー・イェーツのシャッフルアルゴリズムを実装する方法: フィッシャー・イェーツのシャッフルアルゴリズムは、効率的なシャッフルアルゴリズムの一つです。以下は、このアルゴリズムを実装した例です。
func shuffleArray<T>(_ array: [T]) -> [T] {
var shuffledArray = array
for i in 0..<(shuffledArray.count - 1) {
let j = Int.random(in: i..<shuffledArray.count)
if i != j {
shuffledArray.swapAt(i, j)
}
}
return shuffledArray
}
var array = [1, 2, 3, 4, 5]
array = shuffleArray(array)
print(array) // シャッフルされた配列が出力される
- 入れ替え法を使用する方法: 配列の要素をランダムに入れ替える方法もあります。以下は、この方法を実装した例です。
func shuffleArray<T>(_ array: [T]) -> [T] {
var shuffledArray = array
for i in 0..<(shuffledArray.count - 1) {
let j = Int.random(in: 0..<shuffledArray.count)
shuffledArray.swapAt(i, j)
}
return shuffledArray
}
var array = [1, 2, 3, 4, 5]
array = shuffleArray(array)
print(array) // シャッフルされた配列が出力される
これらの方法を使用すると、Swiftで配列をシャッフルすることができます。自分のニーズや好みに合わせて適切な方法を選択してください。