`
Cwind
  • 浏览: 267034 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
博客专栏
793bb7df-a2a9-312d-8cb8-b66c3af482d1
LeetCode题解
浏览量:54209
社区版块
存档分类
最新评论

LeetCode[贪心算法] - #122 Best Time to Buy and Sell Stock II

阅读更多

原题链接:#122 Best Time to Buy and Sell Stock II

 

要求:

假定你有一个包含n个元素的整型数组,其中的第i个元素是指定股票在第i天的价格。

设计一个算法来计算在这n天里可能获得的最大利润。注:只考虑单只该股票的买入和卖出时机,一天内可以买卖多次,但不允许同一时间内存在多次交易(即:再次买入之前,必须买入该股票)

 

难度:中等

 

分析:

贪心算法:在对问题求解时,总是做出在当前看来最好的选择。即:不从整体上最优加以考虑,只求局部最优解。

对于此题情境,获得可能的最大利润的手段为:买入后的次日,只要股价上涨就卖出。同时如果后一天股价下跌则前一天不买入。后一条如果没有时间机器任谁也无法事先知道。所以下面解法只能用于在n天中每天股价都已知的情况下求个理想值,并不能用于指导实际。

 

解决方案:

Java - 2 ms

    public int maxProfit(int[] prices) {
        int maxProfit = 0;
        for(int i=prices.length-1; i>0; i--){
            if(prices[i-1]>=prices[i]){
                continue;
            }else {
                maxProfit += prices[i]-prices[i-1];
            }
        }
        return maxProfit;
    }

简单测试程序 

 

 

3
1
分享到:
评论

相关推荐

    java-leetcode题解之Best Time to Buy and Sell Stock II.java

    - 题目理解:Best Time to Buy and Sell Stock II这道题目的目的是寻找一个最佳的股票买卖时机,使得获得的利润最大化。 - 问题分析:此题是一道典型的动态规划问题,也可以使用贪心算法解决。 - 解题思路:贪心算法...

    python-leetcode题解之122-Best-Time-to-Buy-and-Sell-Stock-II

    在探讨python实现leetcode第122题"Best Time to Buy and Sell Stock II"的解决方案前,我们首先需要明确题目要求。第122题属于动态规划和贪心算法范畴,要求编写一个程序,通过分析给定的股票价格数组来找出最大的...

    java-leetcode题解之Best Time to Buy and Sell Stock IV.java

    本篇Java题解关注的是“Best Time to Buy and Sell Stock IV”(买卖股票的最佳时机 IV),这是该系列问题中的一个变体,涉及动态规划这一算法思想。 首先,需要明确问题的具体要求。在这个变体中,给定一个数组,...

    js-leetcode题解之122-best-time-to-buy-and-sell-stock-ii.js

    LeetCode 122题“买卖股票的最佳时机 II”的JS题解不仅涉及了贪心算法在实际问题中的应用,还涉及了JavaScript编程技巧,是对算法思维和编程技能的一个很好的锻炼。通过学习和实践此类题目的解法,开发者可以提高对...

    java-leetcode题解之Best Time to Buy and Sell Stock I.java

    Best Time to Buy and Sell Stock I是LeetCode网站上的一道著名的编程题目,它属于动态规划的范畴。这道题目通常被称为“买卖股票的最佳时机”,主要是考察程序员对动态规划思想的理解和应用。在这个问题中,给定一...

    算法面试通关40讲完整课件 25-26 贪心算法

    - **股票买卖问题**:如LeetCode上的题目《Best Time to Buy and Sell Stock II》,通过贪心策略,每次遇到股价低于之前最低价时买入,遇到高于当前价格时卖出,可以实现利润的最大化。 - **零钱找零问题**:...

    leetcode-常见考题4.pdf

    第二个问题“Best Time to Buy and Sell Stock II”(122题),题目条件相同,但允许进行多笔交易。在一次交易中,买入后再卖出才算是完成了一笔交易,且不能同时买入多股股票。此问题可以用贪心算法解决,即遍历...

    leetcode卡-leetcode:利特码解决方案

    leetcode卡 leetcode exercises 3-5 solutions everyday. fighting~ TODO array Best Time to Buy and Sell Stock II Valid Sudoku linked list Palindrome linked list Linked List Cycle trees Convert Sorted ...

    3、动态规划必练题(含解法).pdf

    - Best Time to Buy and Sell Stock II:不限制交易次数,寻找最大利润。 - Best Time to Buy and Sell Stock III:存在多日限制交易,最多两次交易。 - Best Time to Buy and Sell Stock IV:与前三者不同,可能...

    Leetcode题目+解析+思路+答案.pdf

    - **Best Time To Buy and Sell Stock**:股票交易的最佳时机问题。 - **Unique Paths**:计算机器人到达目标位置的唯一路径数。 - **Maximum Subarray**:寻找数组中的最大子数组和。 - **Climbing Stairs**:...

    LeetCode,《剑指offer》中的算法题的题目和解法以及常见算法的实现

    Best Time to Buy and Sell Stock"股票买卖问题,可以利用动态规划找到最佳买卖时机。 5. 排序与查找:排序算法如快速排序、归并排序,查找算法如二分查找,都在实际面试中经常出现。例如,"148. Sort List"要求对...

    oj题.zip

    7. **122.py** - 可能是LeetCode的122题,"Best Time to Buy and Sell Stock II"(买卖股票的最佳时机II),这是一道关于动态规划或贪心策略的题目,用于找出股票交易的最佳策略。 8. **156.py** - 这可能是...

    leetcode分类-leetcode:leetcodeJavaScript题解

    JavaScript开发者在这一阶段可以挑战如"最长递增子序列"(Longest Increasing Subsequence)、"买卖股票的最佳时机含冷冻期"(Best Time to Buy and Sell Stock withCooldown)等题目,这些题目需要深入理解动态规划...

    leetcode代码200题c++

    3. **Best Time to Buy and Sell Stock II**:这是一个经典的动态规划问题,用于找出股票的最佳买卖时机,可以连续多次买卖。理解状态转移方程和动态规划的原理至关重要。 4. **Jump Game II**:此问题涉及到广度...

    LeetCode leetcode部分题解答代码实现

    * Best Time to Buy and Sell Stock:给定一个数组,返回股票买卖的最佳时机。这个题目需要使用动态规划的思想,将数组分解成更小的子数组,并找到最佳时机。 * Unique Paths:给定一个矩形,返回从左上角到右下角的...

    LeetCode练习答案

    - **买卖股票的最佳时机(Best Time to Buy and Sell Stock)**: 给定一个数组,它的第i个元素是一支给定股票第i天的价格,求出最大利润。 - **唯一路径(Unique Paths)**: 一个机器人位于一个m x n网格的左上角 (起始...

    Day6-Task123.买卖股票的最佳时机 III

    链接:https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock-iii 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 示例1 输入: [3,3,5,0,0,3,1,4] 输出: 6 解释: 在第 4 天...

    LeeCode每日一题–买卖股票的最佳时机II

    【买卖股票的最佳时机II】是LeeCode上的经典算法问题,...题目链接:[https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock-ii](https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock-ii)

Global site tag (gtag.js) - Google Analytics