我正在寻找等效于Scala中的subsequences
函数。我在scala.collection.Seq找不到它,也许它是在别的地方定义的。但是哪里?获取所有子序列的列表
我认为这个问题是众所周知的。作为例子,给定序列,所有子序列的列表是["","a","b","ab","c","ac","bc","abc"]
。
Scala中的一个快速和肮脏的执行情况如下:
(for {ys <- xs.inits.toList; zs <- ys.tails} yield zs).distinct
但它会是不错的使用已定义的东西,更高效。
远非一个答案,但这个特殊的例子有另一种解决方案:' “ABC” .toSet.subsets()地图(_ mkString( “”)。)。 toList'。 –
这与Haskell没有什么关系,你应该删除Haskell标签。 –