【发布时间】:2012-10-09 09:23:51
【问题描述】:
过程 find-last 接受一个包含 1 个参数的谓词和一个列表,并返回列表中满足该谓词的最右边的元素。如果不存在这样的元素,则返回#f
(define (find-last-helper ans)
(if (predicate? ans)
(add1 ans)))
(define find-last
(lambda (predicate? ls)
(cond
[(null? ls) #f]
[(equal? predicate? (car ls)) car ls]
[else(find-last-helper(find-last ls(cdr ls)))])))
我是否在帮助程序或 find-last 过程中遗漏了什么? 它返回一个语法错误。
【问题讨论】: