编写一个过程(前半部分 lst),它返回一个包含前半部分元素的列表。如果给定列表的长度是奇数,则返回的列表应该有 (length - 1) / 2 个元素。
我以这些程序为例,由于我是 Scheme 的新手,我需要你的帮助来解决这个问题。
(define list-head
(lambda (lst k)
(if (= k 0)
'()
(cons (car lst)(list-head (cdr lst)(- k 1)))))))
(list-head '(0 1 2 3 4) 3)
; list the first 3 element in the list (list 0 1 2)
我想要的程序的预期输出也是:
(first-half '(43 23 14 5 9 57 0 125))
(43 23 14 5)