买卖股票最佳时机+青蛙跳楼梯
1.买卖股票最佳时机
数组 numbers: [1,2,6,3,4]
想求的最佳买卖时机,暴力解法,可以使用for循环,循环两次,查看最大差值
较优方案:动态规划
初始化一个Min值和一个Max值,min为数组中的数字,从numbers[0]开始,若后方数字小于numbers[0],则替换,而max为后一位数字或后多位数字减去min的差值,不断替换,始终保持一个最大,一个最小,代码如下:
var maxProfit = function (prices:number[]) {if (prices.length === 0) return 0;// 最低买点let min = prices[0];// 最大收入let max = 0;for (let p of prices) {// 最佳买点,买入点最低min = Math.min(min, p);max = Math.max(max, p - min);}return max;};
2.青蛙跳楼梯
青蛙跳楼梯时,开始时0,1,2,3无规律,后续则是斐波那契数列,
假设第n层的跳楼次数是 x+1,则第n+1的基础上,把1插入x+1的任何位置,代码如下:
function numWays(n: number): number {
if(n==0)return 1
if(n<4)return n
let l=0,r=0,res=1
for(let i=1;i<=n;i++){
l=r
r=res
res=(l+r)%1000000007
}
return res
};
买卖股票最佳时机+青蛙跳楼梯相关推荐
- 面试编程题-青蛙跳楼梯问题
在做题时遇到这个问题,查看了一些博客后,写下自己的理解 青蛙跳楼梯问题: 问题一:一只青蛙一次可以跳1级楼梯或者2级楼梯,一共有n级楼梯,问一共有多少种到达目的地的方法 根据问题可知: n=1,一共有 ...
- leetcode买卖股票最佳时机相关问题分析
买卖股票最佳时机相关问题分析 前言 1.121买卖股票的最佳时机 思路分析 代码及运行结果 2.122买卖股票的最佳时机II 思路分析 代码及运行结果 3.123买卖股票的最佳时机III 思路分析 代 ...
- 剑指offer 青蛙跳楼梯
题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级--它也可以跳上n级.求该青蛙跳上一个n级的台阶总共有多少种跳法.(变态跳楼梯) 解题思路 1.数学归纳 因为n级台阶,第一步有n种跳法:跳1级. ...
- 笔记1 第13课 动规2 ——买卖股票最佳时机,打家劫舍,零钱找兑——极客时间算法
之前收藏了极客时间的算法训练营3期 共21课,计划每一课写博客来记录学习,主要形式为 方法类型1 题1 题解 题2 题解 方法类型2 题1 题解 -- 题目大体来自leetcode 和 acwing ...
- 【leetcode】青蛙跳楼梯问题
题目描述:一只青蛙一次可以跳上1级台阶,也可以跳上2级--它也可以跳上n级.求该青蛙跳上一个n级的台阶总共有多少种跳法. 分析:设跳上第n个台阶的跳法为f(n),那么倒过来想,跳上第n个台阶的方法有: ...
- android 面试算法题:青蛙跳楼梯 阶乘求和 三位数中的水仙花数
第一题:一只青蛙一次可以跳上1级台阶,也可以跳上2级--它也可以跳上x级.求该青蛙跳上一个x级的台阶总共有多少种跳法. 解题思路: 如果只有1 级台阶,那就只有一种跳法: 如果只有2 级台阶,那就有两 ...
- C语言每日一题:青蛙跳楼梯(学习笔记自用)
今天做了一道csdn上的题,即一个青蛙一次能跳1或2个梯子,请问他跳n阶梯子有多少种跳法?我当时一开始用的是数学排列组合里的分类计算法,先计算全部一个一个跳.又一次跳了两个.两次跳了两个...后来在看 ...
- 巧妙解法:买卖股票最佳时机
题目: 给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格. 如果你最多只允许完成一笔交易(即买入和卖出一支股票),设计一个算法来计算你所能获取的最大利润. 注意你不能在买入股票前卖出股票 ...
- js求解《初级算法》买卖股票最佳时机 ||
题目: 给你一个整数数组 prices ,其中 prices[i] 表示某支股票第 i 天的价格. 在每一天,你可以决定是否购买和/或出售股票.你在任何时候 最多 只能持有 一股 股票.你也可以先购买 ...
最新文章
- mac邮件过滤器SpamSieve,支持任意类型的任意数量的电子邮件帐户
- Kubernetes — CNI 规范
- Python中的文本处理
- docker中部署hadoop、zookeeper、hbase伪分布式并上传到阿里云远程仓库
- 13计算机组装,计算机组装与维修—教案13 .pdf
- 隐马尔科夫模型原理解析
- python面向对象类创建人物类包含姓名、职业_python面向对象类
- oracle ogg 删除,OGG导致归档无法RMAN删除一例
- 【转】VC6.0+icc编译STLPort5.2
- Unity V3 初步使用 —— 为我的.NET项目从简单三层架构转到IOC做准备
- python入侵网站_入侵服务器简介_python信息安全实战_Python视频-51CTO学院
- java keytool下载_Java中Keytool工具的使用总结(一)
- 如何用思维导图快速理解PMBOK-PMP第六版教材
- keil4软件的下载与安装
- 生命游戏(康威的生命游戏) Game Of Life - Conway Cocos Creator 3.x版实现
- win10无线断开无法连接服务器,简单几步解决win10wifi一直断开连接不上的问题
- 内存颗粒位宽和容量_【科普】内存颗粒版本判断方法和编号解析V2.0
- SAP Enhancement POINT和Enhancement SECTION
- Python基础语法1 —— 变量、数据类型
- WebView加载String字符串