二维空间中点的排序算法

时间:2012-11-06 08:51:25

标签: algorithm sorting rank

排名问题:在二维空间中,当且仅当a1> b1和b1> b2时,我们将说点A=(a1,a2)支配点B =(b1,b2)。给定一组n个点,点X的等级是由X控制的点的数量。设计一个算法来找到每个点的等级。

3 个答案:

答案 0 :(得分:1)

按第一个坐标对点进行排序。然后将它们插入到order-statistics树中,该树按第二个坐标对它们进行排序。

插入时的order-statistics树中的点的等级恰好是由此点支配的点数。

答案 1 :(得分:0)

使用稳定排序两次按第一个属性排序,然后按第二个属性排序。最终排序数组中的位置给出了给定点占主导地位的点数。

答案 2 :(得分:0)

小波树数据结构解决了这个问题。我认为它的构建与Evgeny和pogo描述的过程基本相同。