想学lisp,想每隔n个删一次。我只设法删除了第一个(第 n 个)元素
(defun delete-nth (n list)
(if (zerop n)
(cdr list)
(let ((cons (nthcdr (1- n) list)))
(if cons
(setf (cdr cons) (cddr cons))
cons))))
我想删除下一个等
我也试过这个:
(defun remove-nth (list n)
(remove-if (constantly t) list :start n :end (+ 1 n)))
不知道如何重新开始
我在想的是连接,但我不知道如何跟踪我的位置。