【问题标题】:How to generate a list of natural numbers from 1....n?如何从 1....n 生成自然数列表?
【发布时间】:2019-09-05 05:01:02
【问题描述】:

我目前正在尝试在我的函数中生成一个列表。用户将传入一个参数,即Int。该函数的工作是生成一个列表,从1 开始,一直到n。所以列表看起来像

[1....n]

到目前为止,我所做的是:

iterate (+1) 1

虽然这提供了正确的模式,但它会永远持续下去。我怎么能停在n?此外,我如何能够在列表末尾附加'1',例如:

[1...n,1]

【问题讨论】:

  • [1..n] 有什么问题?这是一个完全有效的表达式,您可以从函数中输出(例如)。至于最后加一个1,那就是[1..n] ++ [1]
  • 您也可以take n (iterate (+1) 1) 获取有限子列表。

标签: list function haskell functional-programming


【解决方案1】:

其实很简单:

f :: Int -> [Int]
f n = [1..n] ++ [1]

【讨论】:

    猜你喜欢
    • 2020-08-25
    • 1970-01-01
    • 2019-11-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-20
    • 2014-11-30
    • 2021-12-04
    相关资源
    最近更新 更多