1

調和平均と幾何平均を再帰的に計算する方法について、誰かが良い例を持っていますか?末尾再帰関数を使用することは可能ですか?

ありがとう!

4

2 に答える 2

0

「再帰的」定義を使用できます。

G(x1,x2,...,xn) = (x1 * G(x2,...,xn)^(n-1))^(1/n)
H(x1,x2,...,xn) = n / ( 1/x1 + (n-1)/H(x2,...,xn) )

累乗/乗算が n 回行われるため、これは平均を計算する効率的な方法ではありません。

入力パラメーター (N) としてリストを使用した単純な python 実装:

def G(N):
  if len(N) == 1: return N[0]
  return (N[0] * G(N[1:])**(len(N)-1))**(1/len(N))

def H(N):
  if len(N) == 1: return N[0]
  return len(N) / ( 1/N[0] + (len(N)-1)/H(N[1:]) )
于 2012-08-25T20:57:40.347 に答える