JAVA程序设计:买卖股票的最佳时机含手续费(LeetCode:714)
给定一个整数数组 prices,其中第 i 个元素代表了第 i 天的股票价格 ;非负整数 fee 代表了交易股票的手续费用。
你可以无限次地完成交易,但是你每次交易都需要付手续费。如果你已经购买了一个股票,在卖出它之前你就不能再继续购买股票了。
返回获得利润的最大值。
示例 1:
输入: prices = [1, 3, 2, 8, 4, 9], fee = 2
输出: 8
解释: 能够达到的最大利润:
在此处买入 prices[0] = 1
在此处卖出 prices[3] = 8
在此处买入 prices[4] = 4
在此处卖出 prices[5] = 9
总利润: ((8 - 1) - 2) + ((9 - 4) - 2) = 8.
注意:
0 < prices.length <= 50000.
0 < prices[i] < 50000.
0 <= fee < 50000.
思路:
我们维护两个变量 cash 和hold,前者表示当我们不持有股票时的最大利润,后者表示当我们持有股票时的最大利润。
class Solution {public int maxProfit(int[] prices, int fee) {int cash=0,hold=-prices[0];for(int i=1;i<prices.length;i++) {cash=Math.max(cash, hold+prices[i]-fee);hold=Math.max(hold, cash-prices[i]);}return cash;}
}
JAVA程序设计:买卖股票的最佳时机含手续费(LeetCode:714)相关推荐
- 【Java】 买卖股票的最佳时机含手续费
解题思路 动态规划dp[i][j]表示第i天持股(j=1)不持股(j=0)的最大收益 初始状态,第0天持股的最大收益dp[0][1] = -price[0] - fee = -(第0天股票的费用+卖出 ...
- 【LeetCode每日一题】——714.买卖股票的最佳时机含手续费
文章目录 一[题目类别] 二[题目难度] 三[题目编号] 四[题目描述] 五[题目示例] 六[解题思路] 七[题目提示] 八[时间频度] 九[代码实现] 十[提交结果] 一[题目类别] 贪心算法 二[ ...
- 力扣刷题day32|738单调递增的数字、714买卖股票的最佳时机含手续费、968监控二叉树
文章目录 738. 单调递增的数字 思路 难点:遍历顺序 难点:设置flag 714. 买卖股票的最佳时机含手续费 贪心思路 难点 968. 监控二叉树 思路 难点:如何隔两个节点放一个摄像头 738 ...
- 【LeetCode】买卖股票的最佳时机含手续费 [M](动态规划)
714. 买卖股票的最佳时机含手续费 - 力扣(LeetCode) 一.题目 给定一个整数数组 prices,其中 prices[i]表示第 i 天的股票价格 :整数 fee 代表了交易股票的手续费用 ...
- 714. 买卖股票的最佳时机含手续费(CPP)
714. 买卖股票的最佳时机含手续费 给定一个整数数组 pricespricesprices,其中第 iii 个元素代表了第 iii 天的股票价格 :非负整数 feefeefee 代表了交易股票的手续 ...
- LeetCode714:买卖股票的最佳时机含手续费
该题目和以下题目相关联,感兴趣的小伙伴可直接点击下面的链接! LeetCode121:买卖股票的最佳时机 LeetCode122:买卖股票的最佳时机 II LeetCode123:买卖股票的最佳时机 ...
- LeetCode 714 买卖股票的最佳时机含手续费
714. 买卖股票的最佳时机含手续费 题目 思路 过一遍,记录第i天是否买入和卖出的最值. 代码 class Solution {public:int maxProfit(vector<int& ...
- 【算法】贪心算法:LeetCode 714 买卖股票的最佳时机含手续费 、LeetCode 968 监控二叉树
LeetCode 714 买卖股票的最佳时机含手续费 (中等) 题目 描述 给定一个整数数组 prices,其中第 i 个元素代表了第 i 天的股票价格 :整数 fee 代表了交易股票的手续费用. 你 ...
- Leetcode刷题笔记 714. 买卖股票的最佳时机含手续费
714. 买卖股票的最佳时机含手续费 时间:2020年12月17日 知识点:动态规划 题目链接:https://leetcode-cn.com/problems/best-time-to-buy-an ...
- leetcode 714 买卖股票的最佳时机含手续费-动态规划(中等)
714 买卖股票的最佳时机含手续费-动态规划(中等) 给定一个整数数组 prices,其中第 i 个元素代表了第 i 天的股票价格 :非负整数 fee 代表了交易股票的手续费用. 你可以无限次地完成交 ...
最新文章
- ORB-SLAM3 Initializer.cpp函数解读
- Java操作Kafka执行不成功
- android n-ify miui,MIUI7.5版刷机包
- springboot springcloud区别_SpringCloud微服务全家桶-第一篇!为什么要用微服务
- 2021-07-27 详解TCP连接建立和释放的过程(三报文握手和四次挥手)
- 联想gen系列服务器,Hpe Microserver Gen10 Plus开箱
- python 进程池_Python实践17-进程池
- Python高级——协程
- 输出斐波那契数列不大于1000的序列
- (41)FPGA面试技能提升篇(FC接口、GTX/GTH介绍)
- 阅读众包文献中一些值得mark 的小收获
- hdu,2050,折线分割平面
- F003-牛奶为什么要倒河里 #F1350
- 编写程序判断输入的字母是元音(Vowel)还是辅音(Consonant)。
- kafka之broker
- 字典、集合、控制语句
- 【笔记】微信小程序基础
- 你安全吗?丨黑客掌握的翻垃圾技术有哪些?大家要警惕!
- Python换钱的最少货币数
- 【JSP课程设计】实现动态网页及后台搭建--食味坊