题解 | #牛群买卖策略优化#
牛群买卖策略优化
https://www.nowcoder.com/practice/c8514318443a48218efde630ae11b4c3
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param prices int整型一维数组 * @return int整型 */ public int max_profitv2 (int[] prices) { // write code here int maxProfit = 0; // 记录最大利润 for (int i = 1; i < prices.length; i++) { if (prices[i] > prices[i - 1]) { maxProfit += prices[i] - prices[i - 1]; // 如果当天的价格高于前一天,则进行交易获取利润 } } return maxProfit; } }
Java 编程语言。
该题考察了以下知识点:
- 数组遍历
- 条件判断
- 贪心算法
代码的文字解释如下:
- 创建一个变量
maxProfit
,用于记录牧人经过交易后获得的最大利润。 - 使用循环从第二天开始遍历
prices
数组,因为第一天无法进行交易。 - 对于每一天,比较当前价格与前一天的价格。如果当天的价格高于前一天,说明可以在前一天卖出,当天再买入,从而获取利润。
- 如果条件满足,将当前利润(即当天价格减去前一天价格)累加到
maxProfit
中。 - 最后,返回
maxProfit
,即牧人经过一系列交易后获得的最大利润。