zoukankan      html  css  js  c++  java
  • Leetcode-Best Time to Buy and Sell Stock -java

    题目:

    Say you have an array for which the ith element is the price of a given stock on day i.

    If you were only permitted to complete at most one transaction (ie, buy one and sell one share of the stock), design an algorithm to find the maximum profit.


    分析:

    思路:贪心算法找出股票最低用来计算最大收益。同一时候保存眼下为止的最大收益,并依据产生的新的最大收益是否是最大来进行更新。

    代码:
    public class Solution {
        public int maxProfit(int[] prices) {
            int lowest = 0;
            int maxProfit = 0;
            if(prices.length > 0){
                lowest = prices[0];
                for(int i = 0; i < prices.length; i++){
                    if(lowest > prices[i]){
                        lowest = prices[i];
                    }
                    maxProfit = Math.max(maxProfit, prices[i] - lowest);
                }
            }
            return maxProfit;
        }
    }
    



    PS:
    Math.max(val1, val2);用来比較val1和val2的大小

  • 相关阅读:
    Android软件开发之SharedPreferences
    android软件开发之获取本地音乐属性
    项目开发日记
    MVC中C给V传值
    wtf忘了已经安装了Newtonsoft.json
    我的一些容易忘记的解决问题的方法
    ajax请求返回null
    验证码的一些细节
    项目做不下去
    关于HttpContex
  • 原文地址:https://www.cnblogs.com/cynchanpin/p/6978914.html
Copyright © 2011-2022 走看看