【问题标题】:minimumby function for Julia?Julia 的 minimumby 函数?
【发布时间】:2020-07-17 01:41:54
【问题描述】:

Julia(或一些惯用的替代品)是否有 minimumby 函数?也就是说,我想要这样的东西:

julia> minimumby(length, ["Julion", "Julia", "Jule"])
"Jule"

【问题讨论】:

    标签: julia


    【解决方案1】:

    我想出了以下内容,这似乎可以满足我的要求。不确定它有多优化。

    function minimumby(keyf, a)
        keymap = item -> (keyf(item), item)
        keymin = (x, y) -> if y[1] < x[1] y else x end
        mapreduce(keymap, keymin, a)[2]
    end
    

    【讨论】:

      【解决方案2】:

      不,很遗憾没有。这已被要求多年,但没有人能够实施。

      【讨论】:

        【解决方案3】:

        我能做的最好的就是:

        julia> reduce((a, b) -> length(a) < length(b) ? a : b, ["Julion", "Julia", "Jule"])
        
        "Jule"
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2016-05-16
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2021-02-14
          • 1970-01-01
          相关资源
          最近更新 更多