购买/销售股票算法

时间:2012-11-29 02:17:41

标签: php algorithm

虽然我对任何其他编程语言都没问题,但尝试用PHP提供想法/答案

有一个数组具有以下模式;

$arr = array(
   0 => '12',
   1 => '38',
   2 => '25',
   3 => '4',
   ...
   365 => '45',
);

这基本上是全年365天的价值和股票价格的数组。

As far as I can remember the question;

  • 作为您的输入$arr,编写一个函数,这样您就可以在低价时买入股票,在高价时卖出。函数必须返回以下数组

    $return = array(
        'buy-date'  => '', // day you should've bought, so it price should be low
        'sell-date' => '', // day you should've sold, so its price should be high so you make profit
        'profit'    => ''  // value of profit
    );
    
  • 重要提示;购买股票后,您不能卖出超过30天。

所以诀窍是对于任何给定的时间段/月,也许你想在最低的日期购买,但因为你购买股票后30天内你不能卖出,你可能想在第4天最低价购买,所以你仍然可以在下一个畅销日内出售。 (希望我对此很清楚)

除了给我代码片段,给我想法,算法等,我想了解如何处理这样的问题。

1 个答案:

答案 0 :(得分:3)

蛮力方法很容易编码。对于每天0-335,如果您在当天购买并在未来1-30天内出售,则计算利润。如果利润大于目前为止的最大利润,请将其记录为最大利润,以及买卖日期。