📌  相关文章
📜  按点与参考点的距离对点数组进行排序

📅  最后修改于: 2021-09-06 11:29:11             🧑  作者: Mango

给定一个包含N个点和一个参考点P的数组 arr[] ,任务是根据它们与给定点P的距离对这些点进行排序。

例子:

方法:思想是将距离给定点P的每个元素成对存储,然后根据存储的距离对向量的所有元素进行排序。

  • 对于每个给定的点:
    • 求该点到参考点 P 的距离公式如下:

距离 = \sqrt{(p2-x1)^{2} + (p2-y1)^{2}}

  • 在数组中追加距离
  • 对距离数组进行排序并根据排序后的距离打印点。
    • 时间复杂度:与上述方法一样,对长度为 N 的数组进行排序,在最坏的情况下需要 O(N*logN) 时间。因此,时间复杂度将为O(N*log N)
    • 辅助空间复杂度:与上述方法一样,有额外的空间用于将距离和点存储为成对。因此,辅助空间复杂度将为O(N)
Javascript