algorithm - 表格的多变量最大化

标签 algorithm pseudocode max minimum

我正在寻找一种易于实现的算法,该算法可以找到表中某一列具有最大值的行。然后,它应该找到值接近该特定列最大值的所有行(这两个步骤可以组合吗?)。然后,在选定的行中,我需要找到在另一列中具有最小值的行。

奖励:如果有多个这样的条目,我需要在另一列中找到具有最小值的行。

是的,我知道使用 SQL(ite) 很容易做到这一点,但我不想浪费时间将文本文件中的数据解析到数据库表中......

我对如何做到这一点的简单想法很感兴趣(伪代码很好),现在,我只能按照这些思路想到一些相当复杂的事情:

  • 遍历所有行并找到最大值
  • 遍历所有行并插入“接近”列表中最大值的行
  • 在新的行列表中找到最小值

最佳答案

其实你做的是对的。除非您的行值已经排序,否则您无法避免在第 1 步中遍历所有值,因此您最终会在那里花费 O(R) 时间,其中R 是行数。

对于第二步,其成本也是 O(R),因此它不会降低算法的复杂性。

如果我们考虑相对于R“接近最大值”的值的个数是O(1),那么第三步是O (C) 其中 C 是列数。 如果您的值未排序,您不能做得比这更好,因为您需要测试所有值才能找到最小值。

您的算法具有您将获得的最佳复杂度

关于algorithm - 表格的多变量最大化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13183419/

相关文章:

algorithm - 二维空间除以 m 行

java - 使用 RxJava 拆分整数 ArrayList

algorithm - 具有多个渐变的 SVG 透明度

python - 使用另一个线集合裁剪线集合

c++ - shell 将伪代码排序为 C++ 代码

arrays - 如何交换项目以将一个列表转换为另一个列表

php - 从一个字段在一个查询中最大的表中获取数据

matlab - 逆高斯分布的最大似然估计

从 R 中的 data.table 按组返回第二个最大值

python - 在奇数/偶数整数列表中查找奇偶异常值