我需要一个算法,它可以接收一个未排序的轴对齐矩形数组,并返回任何重叠的矩形对。
每个矩形都有两个变量,即左上角和右下角的坐标。
每个矩形都有两个变量,即左上角和右下角的坐标。
T.remove(V.rectangle.top)
T.remove(V.rectangle.bottom)
否则
对于所有在T中范围为V.rectangle.top到V.rectangle.bottom的U
将 <V.rectangle, U.rectangle> 添加到RS中
T.add(V.rectangle.top)
T.add(V.rectangle.bottom)
5) 返回 RS
这可能对于面试来说有点复杂,取决于职位类型, 它是一种几何计算类的算法。
答案可以在这里找到: http://www.cs.princeton.edu/~rs/AlgsDS07/17GeometricSearch.pdf