0
我试图更熟悉方案中的递归。我已经搜索了这个问题库,并在方案列表中查看了许多用于查找重复条目的“内置”函数,但我试图设计自己的函数。我还没有学会“lambda”。我担心的是当我调用递归函数时,汽车元素将被更新。我希望保持它一样,但每次都要传递一个新的cdr,以便可以将原始汽车元素与列表中的每个后续元素进行比较。如果匹配,我想返回一个#t,如果没有匹配,或者cdr是空的,则返回#f(基本大小写)。任何帮助/建议将不胜感激。在方案列表中查找重复的元素
(define (findDuplicates list)
(if (null? list)
#f
(if (null? (cdr list))
#f
(if (= (car list) (getCarOfCdr list))
#t
(findDuplicates (cdr list)) //trying to use recursion
)
)
)
)
(define (getCarOfCdr list) //Helper function
(car (cdr list))
)