二分总结

# 二分总结(LeetCode Hot 100 的二分题) 二分就两种情况:一种是**找目标值**,另一种是**找边界**。 循环的跳出条件也因此不同: - **找目标值**:`while (l <= r)`,因为 `l == r` 的情况也需要被考虑到,那是最后一个元素。...

基础算法

# 时间复杂度 --- ## **一、时间复杂度是什么?** **时间复杂度(Time Complexity)** 描述算法运行时间随输入规模 **n** 增长的 **增长趋势**。 它不计算具体时间,而是用 **大 O 符号(Big O Notation)** 表示算法在最...

买卖股票

一、状态机模型思想 对于股票问题,我们通常定义两种状态: ● 持有状态 (holding):手上持有股票。 ● 空仓状态 (not holding):手上不持有股票。 在某些题型中,还需要考虑交易次数(例如最多进行 (k) 次交易)或者其他约束(如冷冻期、手续费)。 状态转移方程一...