内容简介:谢谢大家的帮助!我现在有一个工作卡应用程序,确实遇到了其他问题,但他们很快就解决了.翻译自:https://stackoverflow.com/questions/32074136/how-to-split-an-array-in-half-in-swift
谢谢大家的帮助!我现在有一个工作卡应用程序,确实遇到了其他问题,但他们很快就解决了.
您可以进行扩展,以便它可以返回两个数组的数组,使用Ints,Strings等:
extension Array { func split() -> [[Element]] { let ct = self.count let half = ct / 2 let leftSplit = self[0 ..< half] let rightSplit = self[half ..< ct] return [Array(leftSplit), Array(rightSplit)] } } let deck = ["J", "Q", "K", "A"] let nums = [0, 1, 2, 3, 4] deck.split() // [["J", "Q"], ["K", "A"]] nums.split() // [[0, 1], [2, 3, 4]]
但返回一个命名元组甚至更好,因为它强制执行这样一个事实:你期望正好两个数组:
extension Array { func split() -> (left: [Element], right: [Element]) { let ct = self.count let half = ct / 2 let leftSplit = self[0 ..< half] let rightSplit = self[half ..< ct] return (left: Array(leftSplit), right: Array(rightSplit)) } } let deck = ["J", "Q", "K", "A"] let splitDeck = deck.split() print(splitDeck.left) // ["J", "Q"] print(splitDeck.right) // ["K", "A"]
注意:获得第一个正确答案的是Andrei和Qbyte,我只是添加信息.
翻译自:https://stackoverflow.com/questions/32074136/how-to-split-an-array-in-half-in-swift
以上所述就是小编给大家介绍的《数组 – 如何在Swift中将数组拆分成两半?》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- C语言指针数组和数组指针
- 菜鸡的算法修炼:数组(旋转数组的最小数字)
- 交换数组元素,使得数组的和的差最小
- JS数组专题1️⃣ ➖ 数组扁平化
- 算法-计算小数组在大数组中的索引
- 数组常见的遍历循环方法、数组的循环遍历的效率对比
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
机器学习算法原理与编程实践
郑捷 / 电子工业出版社 / 2015-11 / 88.00
本书是机器学习原理和算法编码实现的基础性读物,内容分为两大主线:单个算法的原理讲解和机器学习理论的发展变迁。算法除包含传统的分类、聚类、预测等常用算法之外,还新增了深度学习、贝叶斯网、隐马尔科夫模型等内容。对于每个算法,均包括提出问题、解决策略、数学推导、编码实现、结果评估几部分。数学推导力图做到由浅入深,深入浅出。结构上数学原理与程序代码一一对照,有助于降低学习门槛,加深公式的理解,起到推广和扩......一起来看看 《机器学习算法原理与编程实践》 这本书的介绍吧!