赞
踩
假设阿福已经准确预测出了某只股票在未来 N 天的价格,他希望买卖两次,使得获得的利润最高。为了计算简单起见,利润的计算方式为卖出的价格减去买入的价格。 同一天可以进行多次买卖。但是在第一次买入之后,必须要先卖出,然后才可以第二次买入。 现在,阿福想知道他最多可以获得多少利润。
计算步骤:
package offer; /** * 假设阿福已经准确预测出了某只股票在未来 N 天的价格, * 他希望买卖两次,使得获得的利润最高。 * 为了计算简单起见,利润的计算方式为卖出的价格减去买入的价格。 * 同一天可以进行多次买卖。 但是在第一次买入之后,必须要先卖出,然后才可以第二次买入。 现在,阿福想知道他最多可以获得多少利润。 * * @author xiaowang * */ public class offer63 { public static void main(String[] args) { int[] data1 = { 5, 14, -2, 4, 9, 3, 17 }; int[] data2 = { 6, 8, 7, 4, 1, -2 }; int[] data3 = { 18, 9, 5, 2 }; int result = MaxDiff(data3); System.out.println(result); } private static int MaxDiff(int[] data) { int N = data.length; int result = 0; int
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。