【问题标题】:How to make a start on this Erlang homework? [closed]如何开始这个 Erlang 作业? [关闭]
【发布时间】:2017-02-14 16:15:19
【问题描述】:

这是我的挑战:

  1. 创建一个函数exists,当列表中有项目时返回truefalse

    1> exists(2,[1,4,5,3,2]).
    true
    2> exists(2,[]).
    false
    3> exists(2,[4,5,6,7]).
    false   
    
  2. 创建一个函数listLength,它将返回列表的长度。不允许使用原生函数长度。

    1> listLength([1,2,3]).
    3
    2> listLength([]).
    0
    

【问题讨论】:

标签: erlang


【解决方案1】:

因为它看起来像家庭作业,我希望你不会在这里得到解决方案。我会给你一些线索。

对于第一个:

  • 在一种情况下,您确定列表中不存在该术语:当列表为空时。
  • 当列表不为空时,您可以访问的唯一元素是列表的头部,因此您必须使用递归将列表中的每个元素与输入项一一进行比较。

第二个也是这样:

  • 你知道空列表的长度:0
  • 您知道非空列表的长度是 1 + 尾部的长度。使用递归将所有元素一一计数。

【讨论】:

    猜你喜欢
    • 2021-01-25
    • 1970-01-01
    • 1970-01-01
    • 2016-12-22
    • 2012-07-11
    • 1970-01-01
    • 1970-01-01
    • 2017-10-31
    • 1970-01-01
    相关资源
    最近更新 更多