pdist时间复杂度和内部工作

5视图(30天)
的时间复杂度是什么pdist,计算不同的点集之间的距离吗?
pdist的文档不包含任何关于复杂性及其内部工作,有人能指导我,在哪里可以找到这些信息。
提前谢谢你。

接受的答案

沃尔特·罗伯森
沃尔特·罗伯森 2022年11月7日
你可以阅读源代码。
对于大多数距离的措施完成一个循环数组的元素,挑选一个特定的点和计算后剩下的点的距离。所以(n - 1)距离第一次,然后2 n为第二次迭代,然后n - 3到1。时间的总和,1到N - 1,这是N * (N - 1) / 2 O (N ^ 2)
你可能想要更严格定义为O (d * N ^ 2), d是点的维数。
没有先进的算法。没有四叉树,例如,可能假设减少比较cityblock低于d(维度)。没有去掉重复的地点完成(重复的检测将O (n * log (n) * d),你仍然需要O (n ^ 2)后)
2的评论

登录置评。

更多的答案(0)

s manbetx 845


释放

R2022b

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!