| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 数据结构与算法 -> 只赢不亏的买股票的方法 -> 正文阅读 |
|
[数据结构与算法]只赢不亏的买股票的方法 |
前言大家好,我是来自于「华为」的「程序员小熊」。今天给大家带来一道与「贪心算法」相关的题目,这道题同时也是字节、苹果和亚马逊等互联网大厂的面试题,即力扣上的第 122 题-买卖股票的最佳时机 II。 本文主要介绍「贪心」的策略来解答此题,供大家参考,希望对大家有所帮助。 买卖股票的最佳时机 II?题目描述 示例 解题思路贪心算法是通过做出一系列选择来求出问题的最优解,在每个决策点,它做出当时看来最佳的选择。通过「局部最优」的选择,寄希望实现「全局最优解」。 「举例」 以 prices = [1,4,2,3,7] 为例子,求获得的最大利润,如下图示。 例子 遍历数组 prices,第一天一定买入; 第一次决策 尔后判断判断第二天的价格是否大于第一天,大于则卖出(局部最优); 价格递增时决策 卖出后,如果后面一天的价格小于当天的价格,则当天不买,防止亏本; 价格递减时决策 以此类推,其采用贪心策略买卖股票的完整决策过程如下动图示 决策的整个过程 Show me the Code「C」
「C++」
「Java」
「Python3」
「Golang」
「复杂度分析」 时间复杂度:「O(n)」,其中 n 是数组的长度,需要遍历一遍数组。 空间复杂度:「O(1)」,未开辟额外的空间。 往期贪心算法精彩回顾更多精彩关注公众号「程序员小熊」 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 20:29:25- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |