【发布时间】:2015-01-15 02:38:24
【问题描述】:
我看过很多在线文本教程,问过我的老师,试图通过问题来获得更全面的递归知识,但是我仍然在努力理解如何实现它。我理解这个定义,因为它涉及一个调用自身的函数,以及它用于更高效、更紧凑地编写代码的某些部分这一事实。
我特别难以理解递归的工作原理以及如何实现它以遍历列表中的项目。对于给我们的问题集,我们需要使用递归来遍历并找到列表中的特定项目。让我感到困惑的部分是列表的 [H|T] 部分以及如何列出符合条件的项目并将它们列出在新列表中。
谁能给我一个解释每个步骤的小例子,我可以用它作为指导来尝试独立解决我的问题。这真的很有帮助,通过阅读成为 Prolog 的新手提前我知道这是我需要掌握的一项重要技能,才能更有效地使用该语言。
您的帮助会很棒。
【问题讨论】:
-
我看到的最好的解释在这本书里:Clause and Effect: Prolog Programming for the Working Programmer