基本上,我正在编写的算法将列表 L 作为输入,并希望找到一个数字 x,使得 L 中的所有项 i 减去 x 的平方之和最小。寻找使
abs(L[i]-x)**2
的和最小的 x。到目前为止,我的算法正在按照预期工作,只是在浮点数的情况下不适用。我不确定如何实现浮点数。例如,[2, 2, 3, 4]
理想情况下应该产生结果 2.75
,但是我的算法目前无法产生浮点整数。 def minimize_square(L):
sumsqdiff = 0
sumsqdiffs = {}
for j in range(min(L), max(L)):
for i in range(len(L)-1):
sumsqdiff += abs(L[i]-j)**2
sumsqdiffs[j]=sumsqdiff
sumsqdiff = 0
return min(sumsqdiffs, key=sumsqdiffs.get)
float(number)
将一个数字转换为浮点数。之后,任何涉及到number
的操作都将得到浮点数结果。 - heltonbiker