0
在多级列表中删除重复(使用的Common Lisp)而不改变列表的内部结构中删除在多级列表重复。这个问题对我来说似乎是一个难题,也是一个令人头疼的问题。使用的Common Lisp
源列表: (1 2(6 5)2 3(5 4))==>结果:(1(6)2 3(5 4))
这是我的未工作的决定:
LispWokrs:
(defun定义F(升&可选(LST(删除-重复(弄平升))))
(cond
((null l) nil)
((atom (car l))
(if (member (car l) lst)
(cons (car l) (F (cdr l) (remove (car l) lst)))
(F (cdr l) lst)))
(t (cons (F (car l) lst) (F (cdr l) lst)))))
我试图使用LST用于保持一组清晰的(1 2 6 5 3 4),我已经b EEN试图从该组中的每个我添加新元素时删除元素。我得到的是几乎相同的源序列(并行递归...):
(f'(1 2(6 5)2 3(5 4)))==>(1 2(6 5 )3(5 4))
(F“(А((BCE)d(BEA))))==>(А((BCE)d(BEA)))
然后我搜索过网,但没有为这个问题的决定。