从列表中删除重复项以及元素本身 - Racket,Scheme

时间:2015-11-15 05:25:51

标签: scheme racket

(define (remove-duplicates l)
  (cond ((empty? l)
         '())
        ((member (first l) (rest l))
         (remove-duplicates (rest l)))
        (else
         (cons (first l) (remove-duplicates (rest l))))))

此代码具有此结果。

> (remove-duplicates (list 1 1 2 2 3 4))
(list 1 2 3 4)

不使用过滤器,我希望结果是

  

(删除重复项(列表1 1 2 2 3 4))给出       (清单3 4)

帮助将深表感谢。提前致谢。

1 个答案:

答案 0 :(得分:1)

您可以使用辅助功能:

btn

维护所有唯一元素的两个lst,collector,以及重复元素的dup。

.btn:hover {
    color:red;
}