(number-length '(1 1 0 1 0 0)) 这假设返回 6。我知道如何使用长度并找到它,但我不知道如何在没有长度的情况下使用映射或过滤器或减少。有人可以提供一些想法吗?
映射并应用:
(define (number-length1 lst)
(apply + (map (lambda (n) 1) lst)))
折叠/缩小:
(define (number-length2 lst)
(foldl (lambda (list-element n) (+ n 1))
0
lst))
映射和折叠/缩小:
(define (number-length3 lst)
(foldl + 0 (map (lambda (n) 1) lst)))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)