Math 重新计算平均值

Math 重新计算平均值,math,mathematical-optimization,Math,Mathematical Optimization,在Java应用程序中,我需要根据以下数据重新计算平均值: 我知道当前平均值-avgValue 我知道,avgValue是12个值列表的平均值-count 基于此信息,在将新的值添加到前12个值的列表中时,如何重新计算平均值。对于13个值的列表-count+1,新的avgValue是什么?如果您希望确保不会溢出数据类型,则需要避免计算总和。我建议使用: Current Sum = avgValue * 12 New sum = current Sum + New value New average

在Java应用程序中,我需要根据以下数据重新计算平均值:

  • 我知道当前平均值-
    avgValue
  • 我知道,
    avgValue
    是12个值列表的平均值-
    count

  • 基于此信息,在将新的
    值添加到前12个值的列表中时,如何重新计算平均值。对于13个值的列表-
    count+1
    ,新的
    avgValue
    是什么?

    如果您希望确保不会溢出数据类型,则需要避免计算总和。我建议使用:

    Current Sum = avgValue * 12
    New sum = current Sum + New value
    New average = New sum / 13
    
    New average = avgValue + ((New value - avgValue) / 13)
    

    如果您希望确保不会溢出数据类型,那么您将希望避免计算总和。我建议使用:

    New average = avgValue + ((New value - avgValue) / 13)
    

    工作速度更快,但我的测试失败,出现以下错误-预期错误:但是:@alexanoid这是数字精度。你认为这是失败吗?你真的认为你会有16位有效数字吗?工作速度更快,但我的测试失败了,出现了以下错误-预期:但是是:@alexanoid这是数字精度。你认为这是失败吗?你真的认为你会有16位有效数字吗?