相关疑难解决方法(0)

Scala中运行总和的流

这是我上一个问题的后续行动.
给定函数add_stream(s1:Stream[Int], s2:Stream[Int]):Stream[Int] 我想编码running_sums(s:Stream[Int]):Stream[Int],它返回一个新的流:s1, s1 + s2, s1 + s2 + s3, ...

我可以想到以下实现,但如果s是空的则它不起作用

def running_sums(s:Stream[Int]):Stream[Int] =
  Stream.cons(s.head, add_streams(s.tail, running_sums(s)))

我可以修复如下:

def running_sums(s:Stream[Int]):Stream[Int] =
  if (s.isEmpty) empty
    else Stream.cons(s.head, add_streams(s.tail, running_sums(s)))

然而它看起来并不优雅.

你会如何实施running_sums

scala stream

4
推荐指数
2
解决办法
641
查看次数

标签 统计

scala ×1

stream ×1