这是一个算法问题:
输入为一个非重复正整数数组。寻找一个连续的子数组(长度大于1),其中包含最大的中位数。
例如:输入 [100, 1, 99, 2, 1000],输出应为 (1000 + 2) / 2 = 501
我可以想出一种暴力解法:尝试所有长度从2到数组大小来寻找最大的中位数。但这看起来太慢了。我也尝试过在这个问题上使用双指针,但不确定何时移动左右指针。
是否有更好的解决方法来解决这个问题?
输入为一个非重复正整数数组。寻找一个连续的子数组(长度大于1),其中包含最大的中位数。
例如:输入 [100, 1, 99, 2, 1000],输出应为 (1000 + 2) / 2 = 501
我可以想出一种暴力解法:尝试所有长度从2到数组大小来寻找最大的中位数。但这看起来太慢了。我也尝试过在这个问题上使用双指针,但不确定何时移动左右指针。
是否有更好的解决方法来解决这个问题?