不再维护!,请参见。
基本计算器
基本计算器 i
在线测试 224. 基本计算器
题目描述
实现一个基本的计算器来计算一个简单的字符串表达式的值。 字符串表达式可以包含左括号 (
,右括号 )
,加号 +
,减号 -
,非负整数和空格 。
关键思路
将括号当作一个块儿进行递归处理
基本计算器 ii
在线测试 227. 基本计算器 II
题目描述 实现一个基本的计算器来计算一个简单的字符串表达式的值。 字符串表达式仅包含非负整数,+
, -
,*
,/
四种运算符和空格 。 整数除法仅保留整数部分。
关键思路
建立一个数值栈和一个符号栈
设+-
的优先级为0,*/
的优先级为1
在遇到一个符号的优先级小于或等于符号栈顶元素(若存在)的优先级时弹出栈顶符号进行计算,并再次比较当前符号和栈顶符号(若存在)之间的关系,来判断是否继续向前计算。在符号栈压入当前符号。
字符串读取结束后,将符号栈中所有符号按顺序进行处理后,返回数值栈顶元素作为最终结果
优化 只需要数值栈,减法压入负数,乘除直接计算。
基本计算器 iii
在线测试
题目描述
实现一个基本的计算器来计算一个简单的字符串表达式的值。 字符串表达式可以包含左括号 (
,右括号 )
,加号 +
,减号 -
,非负整数和空格 。
关键思路
递归解决括号的问题。
编译原理中的计算器
TODO 记录一下运算符号之间的优先级和计算策略。
股票投资问题
主要思想分为持有和未持有两种状态,画出状态转移图求解。leetcode题解
数组维数的含义:天数,交易次数,状态(持有 | 未持有)
121. 买卖股票的最佳时机
122. 买卖股票的最佳时机 II
123. 买卖股票的最佳时机 III
188. 买卖股票的最佳时机 IV
309. 最佳买卖股票时机含冷冻期
714. 买卖股票的最佳时机含手续费
蓄水池问题
11. 盛最多水的容器
双指针,贪心算法
容器盛水问题 && 42. 接雨水
解法
- 计算每个位置能装下的最多的水量(计算纵向距离)
- 应用单调栈求解(计算横向距离)