lisp 習題 區分非遞減的列表

babyyellow發表於2012-08-23
給出一個列表,當且僅當 所有元素不是遞減的時候返回 true



CL-USER> (defun not-r (lst)
       (if (or (null lst)
           (= 1 (length lst)))
           t
           (and (<= (first lst) (second lst))
            (not-r (cdr lst)))))
STYLE-WARNING: redefining COMMON-LISP-USER::NOT-R in DEFUN
NOT-R
CL-USER> (not-r '(1 1))
T

CL-USER> (not-r '(5 4 3 2 1))
NIL
CL-USER> (not-r '(1 2 3 4 5))
T
CL-USER>


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/133735/viewspace-741681/,如需轉載,請註明出處,否則將追究法律責任。

相關文章