【发布时间】:2015-10-26 13:30:55
【问题描述】:
我是一个相对较新的方案用户,我正在尝试制作一个能够检查数字、符号和列表(包括嵌套列表)是否相等的函数。我尝试了以下代码的多种变体,但未能提出可行的解决方案;主要问题是在遇到嵌套列表后,如果原始列表中有更多元素,程序将不会继续超过该点,我不确定如何使该函数适用于列表和数字/符号。任何帮助表示赞赏。
请注意,我使用的是 Scheme 中的 R5RS 语言,我理解这限制了该语言的功能。
(define (my-equal? a b)
(cond ((null? a))
((list? (car a))(my-equal? (car a)(car b)))
((equal? (car a)(car b))
(my-equal? (cdr a)(cdr b)))
(else #f)))
【问题讨论】: