我对Scheme有疑问。我对这门语言比较陌生,我的问题相当笼统:
在没有定义递归函数的情况下,是否可以使用Map(或类似的东西)将两个参数列表提供给函数,从输出中生成一个新列表?
例如,假设我有:
(define lst1 (list 1 2 3 4 5))
(define lst2 (list 2 4 6 8 10))
我想以某种方式映射+函数,将每个列表作为参数提供,输出将是一个新列表,lst3:
>lst3
(3 6 9 12 15)
更简洁地陈述问题:当两个参数都是列表时,一个最有效如何映射二进制函数?
感谢您的帮助!
答案 0 :(得分:6)
(map + lst1 lst2)
MAP可以使用任意数量的列表。
示例:
(map + lst1 lst2 lst1) => (4 8 12 16 20)