我有尺寸为n x n
的二维数组。给出每行和每列的最大元素。例如,如果n = 4:当给出每行和每列的最大元素时,计算2D阵列的最大元素O(logn)
int[][] arr = {{2, 3, 10, 1}
{9, 2, 8, 12},
{5, 18, 2, 10},
{7, 9, 3, 5}}
我也有每行其是10,12,18,9的最大值和每列的该9个,18个,10个,12所以我的最大值想要在O(logn)
中找到整个数组的最大元素,即18。 有没有这个问题的算法?
纠正我,如果我失去了一些东西,但不会从行或列最大值中找到最大只是一个'O(n)'操作?或者你在问别的东西吗? –
给出了这些最大值。所以你不必计算它们。换句话说,你有8个元素(最大值)是上面的,你必须找到它们的最大值。 –
我尽可能地回答了下面的问题 - 如果你有任何额外的信息来给我关于最大值的列表,也许我可以改进算法。 – Assafs