我已经编写了这个函数来“检查”列表是否只包含像这样的 2 个元素对: ((1 2)(3 1)(6 2)) --- (根据第一个元素排序并且不重复第一个元素)。但是我遇到了错误,任何人都可以给出一个想法:
(define Bag?
(lambda setlist
(cond ((null? setlist) '())
((and (pair? (caar setlist)) (= (length (caar setlist)) 2)))
((> (caar setlist) 0) (< (caar setlist) (car (cdr (car setlist) ))))
(else(Bag? (cdr setlist))))
))