如何在方案中定义最后?

ki.*_*ki. 2 scheme

如何编写一个函数来获取列表的最后一个元素?

lin*_*ida 5

找到列表的最后一个:

(define (last l)
    (cond ((null? (cdr l)) (car l))
          (else (last (cdr l)))))
Run Code Online (Sandbox Code Playgroud)

使用map最后映射到列表:

(map last '((a b) (c d) (e f)))
==> (b d f)
Run Code Online (Sandbox Code Playgroud)

所以新功能:

(define (last-list l)
  (map last l)
  )

(last-list '((a b) (c d) (e f)))
==> (b d f)
Run Code Online (Sandbox Code Playgroud)