【问题标题】:Algorithm for n-tuple Summationn元组求和算法
【发布时间】:2021-11-13 05:45:49
【问题描述】:

我正在尝试为一些数学公式编写计算机程序,其中我遇到了 n 元组求和,我的意思是 $ \sum \sum \sum \dddot $。我正在寻找有效的算法来用 python 编写代码。例如: $$ \sum_{j_1}^{a_1} \sum_{j_2}^{a_2} \dddot , \sum_{j_i}^{a_i} f(j_1,j_2, \dddot , , j_i) $$ 一个我可以看到的方法是生成一个大小可能为 $ a_1 \dot a_2 \dot \dddot , a_i $ 的大列表并对其进行迭代。但我认为这不是完美的方法,并且存在更好的解决方案。和的数量不固定,换句话说,表达式中的 sigma 符号的数量可以是任意数量。

【问题讨论】:

    标签: python algorithm optimization sum mathematical-optimization


    【解决方案1】:

    如果不深入了解f() 的作用,那么您在优化方面无能为力。你不妨保持你的代码简单-

    from itertools import starmap, product
    
    def calcsum(func, intervals):
        ranges = starmap(range, intervals)
        args = product(*ranges)
        return sum(starmap(func, args))
    

    【讨论】:

      猜你喜欢
      • 2022-12-11
      • 2021-04-23
      • 1970-01-01
      • 2020-03-27
      • 1970-01-01
      • 1970-01-01
      • 2014-04-20
      • 1970-01-01
      • 2020-01-21
      相关资源
      最近更新 更多