zoukankan      html  css  js  c++  java
  • 函数reduce

    reduce用来把一个序列压缩成一个值。它接受至少两个参数,一个函数与一个序列。这函数必须是一个接受两个参数的函数。在最简单的情况下,函数起初用前两个元素作为参数来调用,之后接续的元素作为下次调用的第二个参数,上次返回的值作为下次调用的第一个参数。最后调用所返回的值作为reduce函数的返回值。也就是说像这样的表达式:

    (reduce #’fn ‘(a b c d))

    等同于:(fn (fn (fn ‘a ‘b) ‘c) ‘d)

    示例:

    CL-USER> (reduce #'+ '(1 2 3 4))
    10
    CL-USER> (+ (+ (+ '1 '2) '3) '4)
    10

    CL-USER> (reduce #'intersection '((b r a d 's) (b a d) (c a t)))
    (A)
    CL-USER> (intersection (intersection '(b r a d 's) '(b a d)) '(c a t))
    (A)

    说明:intersection函数的作用就是取两个列表的交集并返回。

    CL-USER> (intersection '(a b c) '(b b c))
    (C B)

  • 相关阅读:
    日志
    JAVA字符串类
    JAVA包
    JAVA面向对象
    JAVA数组
    JAVA循环结构
    JAVA程序调试
    JAVA条件判断
    JAVA算术运算符
    JAVA数据类型
  • 原文地址:https://www.cnblogs.com/flowjacky/p/2828286.html
Copyright © 2011-2022 走看看