腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
视频
沙龙
4
回答
是否可以使用延续使foldRight尾递归?
scala
、
f#
、
fold
、
tail-call-optimization
下面的演示了如何在F#中使用连续传递样式使foldBack成为尾递归。 在Scala中,这意味着: def foldBack[T,U](l: List[T], acc: U)(f: (T, U) => U): U = { l match { case x :: xs => f(x, foldBack(xs, acc)(f)) case Nil => acc } } 通过这样做,可以使尾部递归: def foldCont[T,U](list: List[T], acc: U)(f: (T, U) => U): U = { @annotatio
浏览 3
提问于2011-12-18
得票数 10
回答已采纳
5
回答
Scala -计算List[SomeObj]中SomeObj.double的平均值
scala
我在scala的第二个晚上,我抑制住了用scala写东西的冲动,就像我过去用java写东西一样,并试图学习所有的习惯用法。在这种情况下,我希望使用闭包、映射和列表理解等方法来计算平均值。不管这是否是计算平均值的最佳方法,我只想知道如何在scala中做这些事情,只是出于学习的目的 下面是一个例子:下面的平均方法几乎没有实现。我还有其他一些方法来查找单个userid给出的评分,这些方法使用了TraversableLike的find方法(我想),但实际上没有什么是scala特有的。如果给定一个ListRatingEvent,其中RatingEvent.rating是一个双精度值,我想以类似scala
浏览 0
提问于2010-08-17
得票数 16
回答已采纳
5
回答
Scala的“doto`”
scala
Clojure提供了一个名为doto的宏,它接受其参数和函数列表,并实际调用每个函数,并在(计算的)参数之前进行调用: (doto (new java.util.HashMap) (.put "a" 1) (.put "b" 2)) -> {a=1, b=2} 有没有办法在Scala中实现类似的东西?我设想如下形式的东西: val something = doto(Something.getInstance) { x() y() z() } 它将等同于 val something = Something.getInstanc
浏览 1
提问于2012-06-20
得票数 11
回答已采纳
9
回答
Scala中的字符或字符串-> Unicode值?
scala
、
unicode
所以我正在做"Scala给不耐烦的人“中的一些练习,其中之一是: 编写一个for循环,用于计算字符串中所有字母的Unicode代码的乘积。例如,"Hello“中字符的乘积是9415087488 L。 下一个问题是做同样的事情,但是没有for循环--它提示我们应该在Scaladoc中检查StringOps。 我检查了Scaladoc中的RichChar和StringOps部分,也许我读错了或者看错了地方,但我找不到任何与它们的输出相匹配的东西。到目前为止,我已经尝试过: scala> x.foldLeft(1)(_ * _.toInt) res0: Int = 825152
浏览 4
提问于2012-06-23
得票数 32
回答已采纳
2
回答
如何根据Scala中的对象字段对列表对象进行排序?
scala
、
list
、
sorting
、
object
我有一个对象列表(例如,Student(Name: String,RollNo: Int)),有没有办法在Scala中对它们进行排序? 提前谢谢。
浏览 18
提问于2019-10-31
得票数 1
回答已采纳
6
回答
foldLeft诉foldRight -有关系吗?
scala
、
haskell
以前,在Scala的上回答了我的问题 目前正在研究Haskell,我的理解是,在可以使用foldRight (prepend)而不是++ (附加)的情况下,::应该比foldLeft更好。 正如我所理解的,原因是性能--前者发生在O(1)中,即将一个项添加到前面的恒定时间。而后者则需要O(N),即遍历整个列表并添加一个项。 在Scala中,考虑到foldLeft是按照foldRight实现的,那么使用:+ over ++和foldRight的好处是否重要,因为foldRight被反转,然后foldLeft'd 作为一个例子,考虑一下这个简单的fold..操作,它只是按顺序返回一个列表的
浏览 7
提问于2014-06-23
得票数 27
回答已采纳
6
回答
在Scala中对集合求和的最快方法是什么
scala
、
scala-collections
我在Scala中尝试过不同的集合来计算元素的和,它们比数组的Java sum慢得多(使用for周期)。有没有办法让Scala像Java数组一样快? 我听说在Scala2.8中数组和java中的数组是一样的,但是在实践中它们要慢得多
浏览 1
提问于2010-06-23
得票数 24
回答已采纳
2
回答
Scala中的函数编程-反向列表练习
scala
、
linked-list
、
functional-programming
在研究Paul和Rúnar的“Scala : in Scala”一书的练习和概念时,我无意中发现了编写自己的函数来逆转列表的练习。 作者给出的“建议”是为了激励读者更多地学习,看看我们是否可以用折叠来编写这样的函数。 我的“非折叠”版本如下: def myrev(arr:List[Int]):List[Int] = if (arr.length > 0) { myrev(arr.tail) :+ arr.head } else arr 但是,有人能给我一些建议,说明如何至少开始逻辑,通过折叠反转列表吗? 我知道: List(1,2,3,4).foldLeft(0)({case(x,y)=
浏览 4
提问于2016-08-29
得票数 0
回答已采纳
2
回答
带咖喱函数的Scala无点调用语法
scala
、
syntax
注意:对更一般问题的详细回答是在堆栈溢出问题中。 以下工作: scala> List(1,2,3) filter (_ > 1) reduceLeft(_ + _) res65: Int = 5 还有以下几点: scala> List(1,2,3).filter(_ > 1).foldLeft(0)(_ + _) res67: Int = 5 但不是这样的: scala> List(1,2,3) filter (_ > 1) foldLeft(0)(_ + _) <console>:10: error: 0 of type Int(0) does
浏览 1
提问于2010-10-27
得票数 1
回答已采纳
1
回答
折叠法中的类型失配scala
scala
、
generics
、
types
、
scala-collections
我正在学习Scala,在编写一个简单的还原器函数时遇到了一些困难。我想计算一个值在列表中出现的次数。因此,我编写了一个还原器/折叠函数,它以一个不变的映射作为初始值,然后用列表中值出现的次数来迭代列表“更新”映射。相当简单的东西,但是我对类型系统有一个问题(啊.)花费在JavaScript和Python上的时间太多) 这是一项功能: def times(chars: List[Char]): List[(Char, Int)] = { val acc:Map[Char, Int] = Map() def count(acc:Map[Char, Int], c:Char) = {
浏览 4
提问于2015-10-29
得票数 0
回答已采纳
8
回答
查找数组的最小和最大元素
scala
我想要找到一个数组的最小和最大元素,用于理解。有没有可能用一次数组迭代来同时找到最小元素和最大元素? 我正在寻找一个不使用scala提供的array.min或max的解决方案。
浏览 74
提问于2013-11-29
得票数 27
回答已采纳
1
回答
排序[scala.collection.immutable.Map[String,org.joda.time.DateTime]]
scala
、
sorting
、
collections
、
hive
我在scala中有Seq的Map,它来自单元分区。 我需要从地图下面的Seq获取最新/最近的业务日期 import org.joda.time.DateTime val a = Seq( Map("businessdate" -> DateTime.parse("2018-03-23T00:00:00.000Z")), Map("businessdate" -> DateTime.parse("2018-03-24T00:00:00.000Z")), Map("businessdate" -&g
浏览 0
提问于2018-04-10
得票数 2
回答已采纳
1
回答
如何在Scala中理解这个递归示例?
scala
、
recursion
在使用递归的Scala中,我有以下方法: def foldLeft[Result](initial:Result, op:(Result, Elem) => Result) : Result = { if (isEmpty) initial else tail.foldLeft(op(initial,head), op) 然而,我不明白最后一行中的递归是如何工作的。这对我来说似乎有点复杂,因为在做任何其他事情之前,foldLeft都是在列表的尾部调用的。这里的递归级别是什么样子的? 有人能解释一下这到底是怎么回事吗?
浏览 3
提问于2020-12-17
得票数 0
1
回答
&&如何在折叠的scala中工作?
scala
所以我正在读“Scala中的函数编程”,我正在做练习2.2 实现isSorted,它检查一个ArrayA是否按照给定的比较函数排序: def isSorted:Boolean ={ 我的解决方案,这很管用 { def orderByValue(a : Int, b : Int): Boolean ={ println (a + " " + b ) if( a<= b) true else false } //exercise, def to check wheter an Array[a] is sorted def isSort
浏览 3
提问于2017-01-30
得票数 2
2
回答
如何在scala中替换:
list
、
scala
我从头开始编写了一个扁平函数,它接受一个嵌套列表作为输入,并输出另一个列表。 def flatten[A] (list:List[List[A]]):List[A] 我使用scala的‘:’绑定两个列表,它工作得很好。但是,我的练习禁止我使用该方法或任何内置方法(来自personal scala书的练习)。 现在,我已经编写了一个helper方法来合并这两个列表,称为merge。 合并如何适应新版本的flatten函数?
浏览 0
提问于2016-02-04
得票数 0
2
回答
使用列表中的参数调用函数
scala
有没有办法从列表中调用带参数的函数?Python语言中的等价物是sum(*args)。 // Scala def sum(x: Int, y: Int) = x + y val args = List(1, 4) sum.???(args) // equivalent to sum(1, 4) sum(args: _*)在这里行不通。无论如何,不要提供更改函数的声明。我熟悉一个带有重复参数def sum(args: Int*)的函数。
浏览 3
提问于2013-09-29
得票数 6
4
回答
如何合并两个元组列表?
list
、
scala
、
merge
我在Scala中有两个列表,如何将它们合并以使元组组合在一起? 有没有现有的Scala list API可以做到这一点,或者需要我自己来做? 输入: List((a,4), (b,1), (c,1), (d,1)) List((a,1), (b,1), (c,1)) 预期输出: List((a,5),(b,2),(c,2),(d,1))
浏览 1
提问于2012-10-26
得票数 10
回答已采纳
2
回答
在fold left单行中的类型推断?
scala
、
type-inference
、
fold
我试图反转一个整数列表,如下所示: List(1,2,3,4).foldLeft(List[Int]()){(a,b) => b::a} 我的问题是,有没有一种方法可以将种子指定为某个List[_],其中_是由scala的类型推断机制自动填充的类型,而不必将类型指定为List[Int] 谢谢
浏览 2
提问于2012-11-21
得票数 5
回答已采纳
2
回答
如何从一个列表中找到数字,结果是基于给定数字的序列?
list
、
scala
需要一个scala方法,它可以从列表中找到数字,结果是基于给定数字的序列: def findSeq(baseNum:Int, numbers: List[Int]): List[Int] 如果没有合适的数字,只需返回Nil 给予: a number: 3 a list of number: 5,9,2,4,10,6 它将返回: List(4,5,6) 解释: 因为基数是3,所以它将尝试从列表中找到4。如果发现,试着找到5,然后6,直到一个预期的一个没有找到。把找到的东西还给我,然后把它分类。不需要关心重复的数字。 更多测试用例: findSeq(3, Nil) === Nil find
浏览 3
提问于2014-12-21
得票数 0
回答已采纳
2
回答
如何在Scala中实现插入排序?
list
、
scala
、
insert
、
insertion-sort
我用Scala给出了以下代码: def insertsort (l: List[Int]): List[Int] = { if (l == Nil) Nil else insert (l.head, insertsort (l.tail)) } 现在如何实现insert()?
浏览 2
提问于2015-05-01
得票数 0
3
回答
将Hashmap (k,v)值“与字符串列表”进行比较-有没有更好的Scala实现
scala
、
hashmap
、
contains
我有以下Scala代码。它通过调用isKeywordInTopicTitle( HashMap )来过滤关键字的(k,v)值。这与单词列表进行比较,检查是否有任何wordlist是“包含的”。 val hashWithSearchKeywords = readlinks.values.filter(isKeywordInTopicTitle(_)) [snip] def isKeywordInTopicTitle(keyword: String): Boolean = { val wordList = List("engine", "deluxe",
浏览 5
提问于2015-01-12
得票数 0
6
回答
Python -对列表中的元素进行排序
python
、
list
、
sorting
如果这个问题在其他地方得到了回答,我很抱歉;我试着搜索,但没有找到任何可以回答我的问题的东西(或者我可能找到了,但不理解它)…… 我是Python (v2.6.2)的新手,我有一个包含浮点值的列表列表,如下所示(除了每个列表有百万个2+条目): cat = [[152.123, 150.456, 151.789, ...], [4.123, 3.456, 1.789, ...], [20.123, 22.456, 21.789, ...]] 现在我想要做的是按照第三个列表元素的升序对所有3个列表进行排序,这样我就可以得到: cat_sorted = [[152.123, 151.789, 15
浏览 0
提问于2013-01-05
得票数 5
回答已采纳
2
回答
Scala:如何按时间戳将Iterable[T]分组为Iterable [T]
scala
、
group-by
、
iterator
我想要编写代码来对输入的行迭代器进行分组:通过时间戳和唯一项(通过unit和eventName)对Iterator[InputRow]进行分组,即eventTime应该是新的Iterator[T]列表中的最新时间戳,其中InputRow定义为 case class InputRow(unit:Int, eventName: String, eventTime:java.sql.Timestamp, value: Int) 分组前的数据示例: +-----------------------+----+---------+-----+ |eventTime |unit|
浏览 40
提问于2018-06-02
得票数 3
回答已采纳
1
回答
Scala:将初始NULL传递给foldLeft
scala
、
scala-collections
有没有一种方法可以将null传递给Scala的foldLeft而仍然获得其他的结果值? 示例: def cc (str0: String, str1: String): String = { if (str0 == null) { return str1 } else { return str0 + "/" + str1 } } val list = List("1.txt", "2.txt", "3.txt") list.foldLeft(null)(cc) 这是不可能的,因为在本例中,foldL
浏览 4
提问于2014-10-27
得票数 2
回答已采纳
3
回答
在Scala中创建嵌套的Java TreeMap
scala
、
dictionary
我想在Scala中从2个列表中创建一个嵌套的树形映射,例如 private val a = List(0, 100000, 500000, 1000000) private val b = List (0, 5, 25, 50) 我希望嵌套的树形映射包含作为列表a中的值的键。这些键的值可以是另一个树映射,它包含作为列表b中的值的键,并将值作为默认值。为了清楚起见,下面是我希望树映射的格式-默认值为0: { 0:{ 0:0, 5:0, 25:0, 50:0 }, 100000:{ 0:0, 5:0, 25:0, 50:0 }, ..} 在Scala中有没有一种有效的方法来做到这一点? 编辑:我想
浏览 7
提问于2021-12-02
得票数 0
3
回答
函数式编程: is foldLeft是所有函数式方法(如foldRight、map、filter )的父方法
scala
、
functional-programming
我正在学习Scala和函数式编程领域的新手。我发现最常见的方法有foldRight、map、filter、reduce……总是可以由foldLeft编写(由foldLeft编写的用于使用尾部递归的foldRight )。 例如: def map[A, B](l: List[A])(f: A => B): List[B] = foldRight(l, Nil: List[B])((x, xs) => Cons(f(x), xs)) def reverse[A](l: List[A]): List[A] = foldLeft(l, l)((xs, x) => C
浏览 0
提问于2017-03-11
得票数 2
2
回答
Scala中的点和空间的差异
scala
.和Scala中的对象调用函数的确切区别是什么? 出于某种原因,我得到了一些变化,比如: scala> val l:List[Int] = 1::Nil l: List[Int] = List(1, 2, 3) scala> l foldLeft(0)((hd, nxt) => hd + nxt) <console>:13: error: Int(1) does not take parameters | foldLeft(1)((hd, nxt) => hd + nxt) ^ scala>l.
浏览 0
提问于2016-07-03
得票数 4
回答已采纳
2
回答
如何有效地从我的集合中获取n个最频繁的元素?
scala
、
scala-collections
我正在尝试这样做: List("c","a","b","b","a","a").groupBy(identity).toList.sortBy(_._2.size).reverse.take(2).map(_._1) 这将产生我需要的结果,即两个最常出现的事件的列表: List("a", "b") 只是这样效率很低,因为groupBy创建了一堆我不需要的集合;一个简单的计数就足够了。 做这件事的惯用方法是什么? 想象一下,原始列表非常长,而不同值的数量很小。
浏览 0
提问于2017-10-02
得票数 0
2
回答
连接字符串列表
scala
在Scala中,有没有一个内置的方法可以获取字符串列表中的所有字符串并将它们连接起来?如果没有,我该怎么做呢?
浏览 0
提问于2015-03-27
得票数 2
2
回答
获取元组地图中所有列表的总长度。
list
、
scala
、
dictionary
、
flat
我正在做一个Scala项目,我有一个Map[Long, Tuple2[Boolean, List[Int]]]类型的映射。 我需要将映射中所有列表中元素的总数分配给一个变量。 我目前有一个有效的解决方案,但是,我想要一个更有效的解决方案。我相信我已经听人说过你可以使用一种叫做flatMap的东西。因此,本质上,我想知道是否有一个不需要循环的解决方案,我可以说在映射中添加所有列表的长度。 我的解决办法如下: for((k, v) <- myMap) total = total + v._2.length
浏览 7
提问于2021-07-13
得票数 0
1
回答
用于大型列表的Scala iterator.count (>int32大小)
scala
我有一个很大的列表,我需要得到它的大小。根据scala api https://www.scala-lang.org/api/2.13.3/scala/collection/immutable/List.html,Count返回一个整数,在大型列表中可能会溢出。 我该如何解决这个问题呢?
浏览 11
提问于2021-09-08
得票数 1
回答已采纳
3
回答
如何将scala.xml.NodeSeq转换为Elem?
scala
我正在尝试减少一个元素列表 List(1, 2, 3).map{n => <a>{n}</a>}.reduce{(a,b)=> a ++ b} 但是我得到了这个错误 <console>:8: error: type mismatch; found : scala.xml.NodeSeq required: scala.xml.Elem List(1, 2, 3).map{n => <a>{n}</a>}.reduce{(a,b)=> a ++ b} 如何将NodeSeq转换为Elem?
浏览 0
提问于2014-06-18
得票数 5
3
回答
将球面函数转换为尾递归函数
scala
、
tail-recursion
我在Scala中实现了Sphere函数(获取元素列表,对每个元素进行平方并返回和)。我想将这个函数转换为尾递归函数。我的密码在这里 def Sphere(list: List[Double]): Double = { val power = list.map(math.pow(_, 2)) power.reduce(_+_) }
浏览 0
提问于2019-06-14
得票数 1
回答已采纳
2
回答
颤振-自定义排序当前播放播放列表( just_audio)
flutter
、
dart
我一直试图找到一种方法,通过提取的每个元数据来对当前播放列表进行排序,但到目前为止没有任何运气。 有没有办法用来做这件事? 编辑:以下是媒体数据的输入方式: 1: 2:
浏览 15
提问于2022-05-09
得票数 0
回答已采纳
7
回答
折叠法与foldLeft法差
scala
我不知道fold和foldLeft在Scala中有什么区别。 的问题有一个关于排序的答案。这是可以理解的。但我仍然不明白为什么(来自REPL): scala> Array("1","2","3").foldLeft(0)(_ + _.toInt) res6: Int = 6 但这并不意味着: scala> Array("1","2","3").fold(0)(_ + _.toInt) <console>:8: error: value toInt is not a membe
浏览 0
提问于2012-07-03
得票数 56
回答已采纳
4
回答
如何编写惯用的Scala快速排序函数?
scala
我最近回复了一个,试图用Scala编写一个快速排序函数,我在某个地方看到了类似下面的代码。 def qsort(l: List[Int]): List[Int] = { l match { case Nil => Nil case pivot::tail => qsort(tail.filter(_ < pivot)) ::: pivot :: qsort(tail.filter(_ >= pivot)) } } 我的回答受到了一些建设性的批评,指出列表对于快速排序来说是一个糟糕的集合选择,其次,上面的列表不是尾递归的。 我试着用
浏览 2
提问于2010-06-03
得票数 6
回答已采纳
4
回答
应用逻辑和布尔值列表
scala
、
boolean
、
logical-operators
、
fold
考虑以下Scala中的布尔值列表 List(true, false, false, true) 您将如何使用foldRight或foldLeft来模拟对列表中的所有值执行逻辑和值的功能?
浏览 5
提问于2014-03-19
得票数 24
回答已采纳
3
回答
Scala分区为两个以上的列表
list
、
scala
我在Scala中有一个列表,我正在尝试根据涉及列表的多个元素的谓词将其划分为多个列表。例如,如果我有 a: List[String] = List("a", "ab", "b", "abc", "c") 我想要得到b: List[List[String]],它是List[String]的列表,这样内部List[String] == 3的长度之和。即List(List("a", "b", "c"), List("abc"), List("ab
浏览 2
提问于2014-10-31
得票数 3
7
回答
fold和foldLeft还是foldRight之间的区别?
scala
、
fold
注意:我使用的是Scala2.8--这有问题吗? 为什么我不能像使用foldLeft或foldRight一样使用fold函数 在中,它说: 折叠的结果只能是此并行集合的类型参数T的超类型。 但我在函数签名中看不到类型参数T: def fold [A1 >: A] (z: A1)(op: (A1, A1) ⇒ A1): A1 foldLeft-Right和fold有什么区别,如何使用后者? 编辑:例如,我如何编写一个文件夹来添加列表中的所有元素?对于foldLeft,它将是: val foo = List(1, 2, 3) foo.foldLeft(0)(_ + _) // now t
浏览 96
提问于2011-06-06
得票数 66
回答已采纳
1
回答
cats.effect.IO能被排序吗?
scala
、
scala-cats
我喜欢对一系列的效果进行排序,例如将List[IO[Int]]转换为IO[List[Int]],如下所示: scala> import cats._, cats.data._, cats.implicits._, cats.effect._ scala> val efs : List[IO[Int]] = List(IO(1),IO(2)) efs: List[cats.effect.IO[Int]] = List(IO$647684131, IO$2021068036) scala> var efOfInts = efs.sequence efOfInts: cats.
浏览 0
提问于2018-05-24
得票数 3
回答已采纳
7
回答
有没有办法创建一个不可排序的python对象?
python
有没有可能创建任何不可排序的python对象?因此,当尝试对对象列表进行排序时,这将是一个例外?我创建了一个非常简单的类,没有定义任何比较方法,但是这个类的实例仍然是可比较的,因此是可排序的。也许,我的类从某个地方继承了比较方法。但我不想要这种行为。
浏览 0
提问于2010-03-03
得票数 8
1
回答
我不知道如何在scala中按条件排序
scala
按日期的降序排序,如果相同,按名称排序,如果相同,则按英语、数学和科学的最高分数排序。 object OptionAnswer { case class Score( name: String, english: Int, math: Int, science: Int, date: LocalDate ) def main(args: Array[String]): Unit = { val scoreSeq: Seq[S
浏览 6
提问于2022-10-30
得票数 -1
回答已采纳
2
回答
Scala:如何在Map中使用fold*?
scala
我有一个MapString,字符串,并希望将这些值连接成一个字符串。 我可以使用一个列表来了解如何做到这一点。 scala> val l = List("te", "st", "ing", "123") l: List[java.lang.String] = List(te, st, ing, 123) scala> l.reduceLeft[String](_+_) res8: String = testing123 fold*或reduce*似乎是正确的方法,我只是不能正确地使用Map的语法。
浏览 0
提问于2010-07-08
得票数 12
回答已采纳
2
回答
Scala获取结果的平均值
scala
嗨,我正在试着计算这个tsv集的电影结果的平均值 running time Genre 1 Documentary,Short 5 Animation,Short 4 Animation,Comedy,Romance 动画是一种流派,也是短篇、喜剧、浪漫的缩写 我是Scala的新手,我对如何使用没有任何不可变函数的Scala获得每个流派的平均值感到困惑 我试着使用下面的代码片段来尝试一些迭代,并获得每个流派的runTimes val a = list.foldLeft(Ma
浏览 0
提问于2021-10-27
得票数 0
1
回答
使用List[Int]折叠scala.math.pow时类型不匹配错误:找到双倍,必需Int
scala
当使用math.pow()时,我得到了一个类型错配错误 @ List(1,2,3).foldLeft(1)( (x,y) => scala.math.pow(x,y) ) cmd28.sc:1: type mismatch; found : Double required: Int val res28 = List(1,2,3).foldLeft(1)( (x,y) => scala.math.pow(x,y) ) ^ Compilation F
浏览 0
提问于2020-07-04
得票数 1
回答已采纳
2
回答
根据公共元素折叠集合列表
scala
、
functional-programming
、
set
我有一个看起来很简单的问题,我想用Scala在功能上解决这个问题,但无法解决。我正在学习Scala,并希望确保它使用函数编程原则完成。下面的代码(甚至不起作用)是我所管理的它仍然有一个可变的变量..。任何帮助都是非常感谢的。 基本上,我有一个集合列表,我想加入所有具有公共元素的集合。并递归地应用该方法,即继续加入列表中的集合,直到它们只剩下不相交的集合。 所以对于输入List(Set(1,2,3), Set(4,1,5), Set(6,2,7), Set(8,9)),我想得到List(Set(1,2,3,4,5,6,7), Set(8,9))。 我的代码 def mergeSets(s
浏览 2
提问于2016-11-24
得票数 0
回答已采纳
10
回答
如何将这个foldLeft : Double表达式转换为使用Option[Double]?
scala
、
functional-programming
有人能帮助这个Scala新手吗?在此之前,我们在一个包含这些数量的实体列表中总结了一些数量,其中包括: sum = entities.foldLeft(0.0)(_ + _.quantity) 现在数量是Option[Double],和也是。如何使用惯用的Scala来转换它呢? 如果任何实体的数量是None,那么之和也应该是None。否则,和应该是Some(total)。 编辑:把这个东西放到一个单元测试中,这样我就可以尝试你所有的答案了。请注意,如果任何数量为None,我确实需要结果为None,因为缺少的数量意味着我们还没有完成,所以总数应该反映这一点。即使你没有得到正确的答案,如果你帮助我
浏览 8
提问于2010-09-01
得票数 11
回答已采纳
1
回答
如何在scala中不使用for来迭代数组?
arrays
、
scala
我有RDD[(BreezeMatrix[Double], Array[Int])],我想删除Matrix中array中的列。 例如,如果是Array[1, 3, 4],我想从Matrix中删除1、3、4列。 我的代码是: val viol = rdd.map(x => for (p <- x._2) {val c = x._1.delete(p, Axis._0)}) 但是对于开始,我得到Unit作为返回类型,即使我返回矩阵。此外,我还想知道在scala中是否有一种更实用的方法。
浏览 0
提问于2018-09-10
得票数 0
回答已采纳
3
回答
为什么在星火中聚合和折叠两个不同的API?
scala
、
aggregate
、
apache-spark
、
heterogeneous
、
homogenous-transformation
当使用Scala标准库时,我可以这样做: scala> val scalaList = List(1,2,3) scalaList: List[Int] = List(1, 2, 3) scala> scalaList.foldLeft(0)((acc,n)=>acc+n) res0: Int = 6 从多家酒馆中获得一家公司。 我可以这样做: scala> scalaList.foldLeft("")((acc,n)=>acc+n.toString) res1: String = 123 用多个Ints做一根绳子。 因此,foldLeft可以是
浏览 2
提问于2014-10-29
得票数 8
回答已采纳
1
回答
约束Scala泛型中的类型以接受任何类型的Int
scala
我想写一个模糊的函数,就像: def doubleit[A](a: A): A = {a + a} 但我希望'A‘代表任何类型的国际,但不是任何东西。有没有办法让Scala知道我想要的A是什么意思? def doubleit[A <: Int](a: A): A = {a + a} 被编译器拒绝。
浏览 0
提问于2015-01-22
得票数 1
回答已采纳
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
像这样操作 Python 列表,能让你的代码更优雅|pythonic 小技巧
六、Python的类型与运算-列表
Python基础 列表
好程序员大数据视频教程之快速入门Scala篇
Python之高阶函数
热门
标签
更多标签
云服务器
即时通信 IM
ICP备案
对象存储
实时音视频
活动推荐
运营活动
广告
关闭
领券