【发布时间】:2011-03-07 23:21:59
【问题描述】:
编写一个递归Scheme过程count-dist elements,它接受一个包含重复元素的列表并返回列表中不同元素的数量。
这是我的代码,但它不能正常工作。请帮忙!谢谢!!
(define (count-dist-elements lis)
(cond
((null? lis) 0)
((null? (cdr lis))0)
((member (car lis)(cdr lis)))
(else(+ 1(count-dist-elements (cdr lis))))))
p/s:顺其自然(count-dist-elements '(1 2 1 1 2 3 4 5 5 6 6 7 7 8 8 8 9))
【问题讨论】:
-
我认为这与您的困难无关,但您的代码缩进并不完全正确。如果这反映了它的实际外观并且不仅仅是将其输入 Stack Overflow 时出现的故障,我是否强烈建议您养成总是小心缩进和间隔代码的习惯?这将使其更易于阅读(对您自己和他人而言),并使一些错误更难以被注意到。
标签: count scheme unique element distinct