- 博客(6)
- 收藏
- 关注
原创 单调队列_
单调队列(Monotonic Queue)是一种特殊的队列结构,它主要用于解决一些与滑动窗口相关的问题。单调队列的核心思想是维护一个队列,使得队列中的元素始终保持单调递增或单调递减的顺序。
2025-02-18 16:48:44
521
原创 数组实现表达式求值
栈顶指针初始化:初始化为 -1,表示空栈,避免索引混乱(如 t1 = -1 表示 num 栈为空)。清空栈:表达式遍历完成后,若 op 栈非空,需依次弹出所有操作符并运算,确保结果正确。优先级定义:通过 hash() 函数区分优先级,如 +/- 为 1,*// 为 2。入栈逻辑:转换后立即压入 num 栈,并更新遍历索引(i = j - 1)。双栈分工:使用两个栈分别存储操作数(num 栈)和操作符(op 栈)。主循环分支:按字符类型(数字、括号、操作符)分流处理,确保逻辑清晰。2、操作符优先级处理。
2025-02-11 21:41:35
550
原创 数组实现单链表
用数组模拟链表是一种利用数组索引代替指针实现链表结构的方法。这种方法适用于需要高效内存管理或避免动态内存分配的场景。2. 空闲链表:维护一个空闲链表管理未使用的节点,初始时所有节点均为空闲。1. 节点表示:数组的每个元素表示一个节点,包含数据和下一个节点的索引。通过数组索引模拟链表操作,既能享受链表的灵活性,又能利用数组的高效性。3. 索引操作:通过操作数组索引实现链表的插入、删除等操作。- 缺点:大小固定,无法动态扩展;- 需要快速分配/释放(如算法竞赛中的邻接表)。- 内存受限环境(如嵌入式系统)。
2025-02-09 22:51:55
320
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅