《LeetCode刷题》—121. 买卖股票的最佳时机
《LeetCode刷题》—121. 买卖股票的最佳时机
一、题目内容
原题连接:https://leetcode.cn/problems/best-time-to-buy-and-sell-stock/
题目:
二、个人答案(Java)
注意:该题个人答案未通过,运行时间超时
思路:相当于给一段数组,后面一个数减去前面一个数,求最大值,马上就想到了反向循环,循环两次,外循环每一个元素,内循环去循环前面的每一个数,求其最大值
代码:
class Solution {public int maxProfit(int[] prices) {int Max=0;for (int i = prices.length-1; i >=0; i--) {for (int j = i-1; j >=0 ; j--) {int temp=prices[i]-prices[j];if (temp>Max){Max=temp;}}}return Max;}
}
三、官方答案(Java)
方法一:暴力法
代码:
public class Solution {public int maxProfit(int[] prices) {int maxprofit = 0;for (int i = 0; i < prices.length - 1; i++) {for (int j = i + 1; j < prices.length; j++) {int profit = prices[j] - prices[i];if (profit > maxprofit) {maxprofit = profit;}}}return maxprofit;}
}
方法二:一次遍历
思路:
代码:
public class Solution {public int maxProfit(int prices[]) {int minprice = Integer.MAX_VALUE;int maxprofit = 0;for (int i = 0; i < prices.length; i++) {if (prices[i] < minprice) {minprice = prices[i];} else if (prices[i] - minprice > maxprofit) {maxprofit = prices[i] - minprice;}}return maxprofit;}
}
官方答案来源:
作者:LeetCode-Solution
链接:https://leetcode.cn/problems/best-time-to-buy-and-sell-stock/solution/121-mai-mai-gu-piao-de-zui-jia-shi-ji-by-leetcode-/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
《LeetCode刷题》—121. 买卖股票的最佳时机相关推荐
- LeetCode - 121. 买卖股票的最佳时机
121. 买卖股票的最佳时机 class Solution {public int maxProfit(int[] prices) {if (prices == null || prices.leng ...
- LeetCode 121:买卖股票的最佳时机 思考分析
题目描述: 给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格. 如果你最多只允许完成一笔交易(即买入和卖出一支股票一次),设计一个算法来计算你所能获取的最大利润. 注意:你不能在买入股票 ...
- leetcode - 121.买卖股票的最佳时机
121.买卖股票的最佳时机 ------------------------------------------ 给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格. 如果你最多只允许完成 ...
- 力扣:121. 买卖股票的最佳时机 题解
力扣:121. 买卖股票的最佳时机 1 题目描述 2 题解 1 题目描述 给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格. 你只能选择 某一天 ...
- 力扣刷题day42|121买卖股票的最佳时机、122买卖股票的最佳时机II
文章目录 121. 买卖股票的最佳时机 贪心思路 动态规划思路 动态规划五部曲 122. 买卖股票的最佳时机II 贪心思路 动态规划思路 动态规划五部曲 121. 买卖股票的最佳时机 力扣题目链接 给 ...
- LeetCode #121 买卖股票的最佳时机 贪心 单调栈 动态规划
LeetCode #121 买卖股票的最佳时机 题目描述 给定一个数组,它的第 iii 个元素是一支给定股票第 iii 天的价格. 如果你最多只允许完成一笔交易(即买入和卖出一支股票一次),设计一个算 ...
- 121. 买卖股票的最佳时机 JavaScript实现
121. 买卖股票的最佳时机 买卖股票的最佳时机 一.动态规划 股票问题详解 1.状态:有两种状态:持有或者没有股票.每天的状态是其中之一. 2.当天是否持有股票的最大利润 = max ( 前一天是否 ...
- 【LeetCode】第1天 - 121.买卖股票的最佳时机
121.买卖股票的最佳时机 题目描述 解题思路 代码实现 题目描述 解题思路 两次遍历(i, j)价格数组,找出卖出和买入的最大差值(max(prices[j] - prices[i])). i: 0 ...
- 代码随想录算法训练营第五十二天_第九章_动态规划 | 121. 买卖股票的最佳时机、122.买卖股票的最佳时机II
LeetCdoe 121. 买卖股票的最佳时机 给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格. 你只能选择 某一天 买入这只股票,并选择在 未 ...
最新文章
- 为什么不让安装卫xing×××啊
- 经纬度坐标与距离的相互转换及其实现
- 基础编程题之最近公共祖先
- 关联 VMware 产品的内部版本号和版本 (1014508)
- C语言异常处理之 setjmp()和longjmp()
- 【Network篇<Day02>】——华为模拟器eNSP、交换机命令、路由器命令
- 解决Rigify报错:“Please specify a valid pivot bone position. Incorrect armature for type ‘basic_spine‘”
- Windows 10 下生成 ssh 密钥
- qt实现拓扑图_基于QT的PLC梯形图编辑系统设计与实现
- 用户运营 - 活跃度分析
- cesium分屏对比
- 整流十五—网侧低频电流谐波抑制方法及其稳定性分析
- SqlServer按半小时分组统计
- 微信公众号支付和移动支付
- 【细读Spring Boot源码】重中之重refresh()
- redis缓存失效时间设为多少_Redis缓存过期失效机制
- Cesium 系列1 - 简介及源码下载发布
- css表格文字不换行怎么设置?
- Synology NAS群晖DS218play 运行内存测试
- We should: Good Good Study, Day Day Up