排序使用什么算法?
我需要向已排序的列表中添加一个整数,以便将其放在正确的位置。我的第一个强项是 (sort (cons newelt list) #'<) 但是,鉴于list已经排序,实际上只需要一个插入,这意味着取决于所使用的算法,该解决方案可能非常不合适sort。 那么,使用哪种算法sort? 我会做以下更好的方法吗? (let ((tail list)) ;; The first element is never less-than (while (and tail (< newelt (cadr tail))) (setq tail (cdr tail))) (setcdr tail (cons newelt (cdr tail))) list)