【发布时间】:2015-04-24 02:39:28
【问题描述】:
我们有一组代表价格随时间变化的数字。例如,我们有 [10, 4, 6, 8, 2, 5, 3, 9, 1]。我们想知道什么时候是买卖以最大化利润的最佳时机。在这种情况下,我们将在时间[4] = 2 买入并在时间[7] = 9 卖出,从而获得 9 - 2 = 7 的利润。
在数学上,我们正在寻找 a 和 b,其中 a
使用分治法制作复杂度为 O(nlogn) 的算法有些微不足道。我一直在寻找一种最坏情况 O(n) 的算法,但没有成功。任何帮助将不胜感激。
【问题讨论】:
标签: algorithm time-complexity divide-and-conquer