底部代码是从排序列表 L 中删除相邻的重复元素。
(define a
(lambda (L)
(cond
((null? L) L)
((null? (cdr L)) L)
((eqv? (car L) (car (cdr L))) (a (cdr L)))
(else (cons (car L) (a (cdr L)))))))
问题是“编写一个类似的函数,使用 Scheme 的命令式特性来修改 L '就地',而不是构建一个新列表。在简洁性、概念清晰性和速度方面将其与上面的代码进行比较。
但我不清楚什么是必要的功能。请帮忙。