相关疑难解决方法(0)

快速运行总和

我想runningSum在一个数字数组(或任何有序的可添加东西的集合)上的函数返回一个相同长度的数组,其中每个元素i是A中所有元素的总和,直到包含i.

例子:

runningSum([1,1,1,1,1,1]) -> [1,2,3,4,5,6]
runningSum([2,2,2,2,2,2]) -> [2,4,6,8,10,12]
runningSum([1,0,1,0,1,0]) -> [1,1,2,2,3,3]
runningSum([0,1,0,1,0,1]) -> [0,1,1,2,2,3]
Run Code Online (Sandbox Code Playgroud)

我可以使用for循环或其他任何方法来完成此操作.有更多功能选项吗?它有点像reduce,除了它构建一个具有所有中间值的结果数组.

更一般的是拥有一个接受任何序列的函数,并提供一个输入序列的运行总和的序列.

swift

11
推荐指数
3
解决办法
1590
查看次数

从整数中获取数字值的简单方法

我需要细分一个3位数字来获得每个数字的值.我知道如何使用以下内容获取第一个和最后一个数字的值:

var myInt: Int = 248

print(myInt/100) // first number equals 2
print(myInt%10) // last number equals 8
Run Code Online (Sandbox Code Playgroud)

我也知道如何使用以下方法获得中间数字的值:

print((myInt - myInt/100*100 - myInt%10)/10) // middle number equals 4
Run Code Online (Sandbox Code Playgroud)

但是,我觉得我得到中间数字值的方式太乱了,并且可能有更简单的方法来获得相同的结果.

有没有人知道更简单的选项来获得中间数字的值,那么我目前使用的是什么?

int digits swift

2
推荐指数
1
解决办法
3533
查看次数

如何获取 Int 值的所有数字

是否有可能Int在 Swift 中获取变量的所有数字而不将此变量转换为string?

小例子我现在是怎么做的:

let number = 123456

let array = String(number).characters.map{Int(String($0)) ?? 0}
Run Code Online (Sandbox Code Playgroud)

swift swift3

2
推荐指数
1
解决办法
1374
查看次数

Int数组到Int标准方法

我试图将Int数组转换为Int数字.我现在正在做的是将其转换为String数组,然后使用该joined()函数.有没有更有效的方法来做到这一点?

例:

let sortedIntArray = String(number).characters.map{Int(String($0)) ?? 0}.sorted(by: { $0 > $1 })

let desOrder =  Int(sortedIntArray.map{String($0)}.joined())!
Run Code Online (Sandbox Code Playgroud)

arrays int ios swift swift3

2
推荐指数
1
解决办法
94
查看次数

标签 统计

swift ×4

int ×2

swift3 ×2

arrays ×1

digits ×1

ios ×1