给定一个数组,要求把数组内元素的顺序随机打乱,然后输出,主要是要保证效率。
func shuffleArray(arr:[Int]) -> [Int] {
var data:[Int] = arr
for i in 1..<arr.count {
let index:Int = Int(arc4random()) % i
if index != i {
swap(&data[i], &data[index])
}
}
return data
}
测试代码:
let sortArr:[Int] = [1,2,3,4,5]
let tempArr = self.shuffleArray(arr: sortArr)
print("FlyElephant-随机数组:\(tempArr)")