基于某种约束从矩阵中提取值

时间:2016-12-06 09:14:03

标签: algorithm sorting

我有一个Nx2矩阵(称之为A)和一个数字K.我需要找到该行,使得第一列中的值为最大值,第二列中的值为< ķ

即。 Max i A [i,1] s.t. A [i,2]< ķ

我需要提取O(log N)或更好的值,不包括任何涉及的预处理,即可以在搜索元素之前对矩阵进行排序。

1 个答案:

答案 0 :(得分:0)

按第二列排序矩阵A

遍历矩阵并将从开始到当前行的最大值索引写入辅助阵列B

对于每个查询 - 通过第二列的二进制搜索找到最大行imax,并从行A[B[imax]]的第一个和第二个单元格中获取值