swift - 索引后随机排列数组

标签 swift shuffle swift4.2

我正在尝试在特定索引后打乱数组,我使用拆分/合并机制,但是,有什么有效的方法吗?

例如:

var arr = [0,1,2,3,4,5,6,7,8,9]


arr.shuffle(after index:4)
print(arr) -> //[0,1,2,3,4,7,9,8,6]

arr.shuffle(after index:0)
print(arr) -> //[0,3,2,1,4,9,8,6,8]

最佳答案

shuffle()MutableCollection 协议(protocol)的一个方法,因此它可以应用于数组 slice。 示例:

var arr = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
arr[5...].shuffle() // Shuffle elements from index 5 to the end
print(arr) // [0, 1, 2, 3, 4, 6, 8, 7, 5, 9]

关于swift - 索引后随机排列数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53741384/

相关文章:

ios - 检查数组中按钮的文本

swift - 类型 'Notification.Name' (又名 'NSNotification.Name' )没有成员 'UIDevice'

python - 更好的算法来随机播放(或交错)多个不同长度的列表

cuda - 如何执行 shfl.idx 的相反操作(即扭曲分散而不是扭曲聚集)?

javascript - JavaScript 中一组数字的随机排列

Swift 4.2+ 播种随机数生成器

swift - SKAction.resize 不起作用

json - 获取此输出 json 的所有值

ios - 为什么我们需要为 Swift 中的类编写初始化程序,而不是为 Struct 编写初始化程序

ios - 无法设置 (key_name) 用户定义的检查属性。此类与键的键值编码不兼容