我试图找到数字列表中的最小元素。
使用显式递归时这是微不足道的,但我正在寻找一种方法来使用内置的高阶函数来完成此操作,例如
map
,
filter
,
和foldr
。
换句话说,我想使用这些功能的组合来获得我想要的东西。
答案 0 :(得分:1)
使用foldr。累加器以+ inf.0开头。 combine-accumulator-and-element应该返回最小的累加器和元素。
答案 1 :(得分:0)
还可以在列表中使用'sort'函数,然后获取排序列表的第一个元素:
(first (sort '(5 2 3 6 4 0 9 -3 2 6) <))
;; => -3