gpt4 book ai didi

clojure - 减少功能的意外结果

转载 作者:行者123 更新时间:2023-12-04 13:44:53 25 4
gpt4 key购买 nike

我想从向量中获取最小的元素。为此,我结合使用reducemin函数。但是,当提供自己的min实现时,会得到意外的结果:

user=> (reduce (fn [x y] (< x y) x y) [1 2 3 2 1 0 1 2])
2
user=> (reduce min [1 2 3 2 1 0 1 2 3])
0

使用标准 min的reduce会按预期返回0。但是,当我提供自己的实现时,它将返回2。我在做什么错?

最佳答案

您缺少if:

(reduce (fn [x y] (if (< x y) x y)) ...)
^-- note the if

工作良好。 :-)

关于clojure - 减少功能的意外结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2814936/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com