1

你好,我得到了 Prolog 函数成员,它告诉我们元素是否存在于列表中。

现在我应该创建一个返回没有该元素的列表的函数。我或多或少知道它应该是什么样子,但不知何故我不知道该怎么做。

到目前为止的想法:

  • 在我们的元素之前返回列表中的元素,并将它与我们元素之后的列表的其余部分连接起来。
  • 在递归遍历列表并构建它的谓词中使用 member()。

帮助。

4

1 回答 1

3

(对我来说似乎是家庭作业,所以我会给你一个包含一些提示的大纲;-)

鉴于[H|T]...

  • ...如果H是要删除的元素,则返回T,(如果您需要删除所有此类元素,请记住也要递归T。)
  • ...如果H不是删除的元素,则返回[H|NewTail]whereNewTail是递归删除元素的结果T
于 2012-07-02T14:50:22.100 回答