数组(数据结构与算法 - 5)
💡
原文英文,约2700词,阅读约需10分钟。
📝
内容提要
本文介绍了常见的数组和栈操作算法,包括去重、移动零、找缺失数字、找只出现一次的数字、Kadane算法、最长公共序列、重新排列数组、找大多数元素、两数之和、旋转数组、二叉搜索树中的第k个最小元素、荷兰国旗问题、股票买卖、查找元素、矩阵置零、二分查找、中缀转后缀、中缀转前缀、后缀转中缀、后缀转前缀、单调栈等。
🎯
关键要点
- 从排序数组中原地去重的算法
- 将数组中的零移动到末尾的算法
- 寻找缺失数字的算法
- 找出只出现一次的数字的算法
- Kadane算法用于求最大子数组和
- 寻找最长公共序列的算法
- 根据符号重新排列数组的算法
- 找出大多数元素的算法
- 两数之和的算法
- 寻找缺失和重复数字的算法
- 旋转数组的算法
- 在二叉搜索树中找到第k个最小元素的算法
- 荷兰国旗问题的解决方案
- 股票买卖的最大利润算法
- 在矩阵中查找元素的算法
- 将矩阵置零的算法
- 二分查找的实现
- 寻找数字的下界的算法
- 寻找峰值元素的算法
- 在旋转排序数组中查找元素的算法
- 计算两个不同大小的已排序数组的中位数的算法
- 计算前缀和的算法
- 滑动窗口最大子数组和的算法
- 栈的基本操作和使用
- 验证括号有效性的算法
- 单调栈的实现
- 中缀表达式转后缀表达式的算法
- 中缀表达式转前缀表达式的算法
- 后缀表达式转中缀表达式的算法
- 后缀表达式转前缀表达式的算法
- 前缀表达式转后缀表达式的算法
- 后缀表达式转前缀表达式的算法
- 单调栈的应用
➡️