【发布时间】:2014-03-22 18:29:22
【问题描述】:
以二维数组为例
scala> val a = Array.tabulate(2,3){_+_}
a: Array[Array[Int]] = Array(Array(0, 1, 2), Array(1, 2, 3))
如何定义函数
def getCol(ith: Int, a: Array[Array[Int]]): Array[Int]
交付
val col2 = getCol(2, a)
col2: Array[Int] = Array(1,2)
一种简单而低效的方法包括
def getCol(ith: Int, a: Array[Int]): Array[Int] = {
val t = a.transpose
t(ith)
}
因此也要求更有效的方法。
【问题讨论】:
-
如果您需要真正高效的代码,这是我可能只使用 while 循环的情况之一。我怀疑地图操作是否非常有效,因为问题很简单,这将是我的选择。
标签: arrays scala collections