下面是 Python 版本的代码实现,可以看到,虽然要证明牛顿迭代的收敛性不太容易,但是只需要不到 10 行代码就可以实现牛顿迭代算法。
class Solution:
def mySqrt(self, x: int) -> int:
e = 0.1 # 迭代精度
last_x = -100 # 记录上一次迭代的解
res = x # 当前解
while abs(res-last_x) > e:
last_x = res
res = (res*res + x)/(2*res)
return int(res)
牛顿迭代动画演示
动画演示了的牛顿迭代计算过程,可以发现随着迭代的进行,当前解很快就收敛到了真实解(1.732)附近。

KMeans 聚类算法
KMeans 聚类算法的功能是将给定的一组数据划分成 k 组,这里 k 的数目由使用者指定,算法可以将相似性高的数据划分到同一个组内,这样有助于发现数据之间的内在联系,在机器学习中经常使用。

![P11246 [GESP202409 六级] 小杨和整数拆分-171主机测评](https://www.171host.com/wp-content/uploads/2026/11/20261108100631-6af049a75855c-220x150.png)
![打卡信奥刷题(3678)用C++实现信奥题 P12274 [蓝桥杯 2024 国 Python B] 设计-171主机测评](https://www.171host.com/wp-content/uploads/2026/11/20261108053830-6af00ad6bdf8d-220x150.png)

