2
使用插入來編寫一個函數sort1,它將整數列表按遞增順序排序。 [如果列表爲零,我們就完成了。否則,插入目錄的車開進了一個排序CDR]Lisp插入排序問題
這是我能夠做到的,我有麻煩,在一個單一的功能定義這兩個函數調用SORT1:
(defun insert (item lst &optional (key #'<))
(if (null lst)
(list item)
(if (funcall key item (car lst))
(cons item lst)
(cons (car lst) (insert item (cdr lst) key)))))
(defun insertion-sort (lst &optional (key #'<))
(if (null lst)
lst
(insert (car lst) (insertion-sort (cdr lst) key) key)))
哇,這是我們的第一個遞歸問題標題嗎? – Chuck
@Chuck::) :-) :) :-) – woliveirajr