以下有什么好的实施方式?
有问题的数据结构不得包含任何比另一个更大的点。例如(2,11)> (1,10),(5,5)不是-gt(1,5)。输入是在线进行的,因此无法预先订购/准备。
好的,这可以用上面的图片显示。因此,每个点都按照指示的顺序插入,如下所示:
想法?
答案 0 :(得分:1)
从点数组(-Inf,Inf)和(Inf,-Inf)
开始根据以下规则
对数组中的元素进行排序for (x,y) and (t,z)
if x<t (x,t) is before (t,z)
if x=t and y>z then (x,t) is before (t,z)
如果要插入元素,请找到插入元素之前具有最高顺序的元素,并将其命名为EBefore。还可以找到插入元素后面的最低顺序元素,并将其命名为EAfter。您可以在找到这两个元素时使用二进制搜索。
如果是
的行业产品EInserted x (EAfter - EBefore) > 0
删除EBefore和EAfter之间的所有元素,并在它们之间插入EInserted。如果产品是否定的,则不要添加元素。
答案 1 :(得分:0)
单个链接列表,其中的点数成对比另一个点少。
考虑比较当前步骤中列表中每个点的新点的情况。 Сheck:我们的观点不到列表中的检查点吗?
如果是,请从列表检查点中删除。
否则,只需在列表中添加一个新点即可。
最后,列表中有这样的观点。