首页 › 算法与数据结构 › 正文
栈按照后进先出的规则管理元素,链表通过链接关系组织不同存储位置_算法与数据结构
笔记摘要
算法与数据结构
动态规划复用相互重叠子问题的计算结果
动态规划复用相互重叠子问题的计算结果。贪心算法每步选择当前看似最优的方案。局部最优选择不总能产生全局最优结果。回溯通过尝试和撤销探索候选解空间。剪枝利用条件提前排除不可能合格的分支。随机算法通过随机选择改变计算过程。近似算法在资源限制下寻求可接受结果。算法选择需要兼顾数据规模和实际约束。
邻接矩阵使用二维关系保存边的信息
邻接表适合表示部分较稀疏的图。邻接矩阵使用二维关系保存边的信息。广度优先搜索按照路径层次扩展节点。深度优先搜索沿分支深入后再回退。最短路径算法需要考虑边权的适用条件。负权边会使某些贪心最短路径方法失效。拓扑排序只适用于不存在有向环的图。并查集用于维护元素之间的集合归属。
顺序访问时连续数组通常具有较好局部性
顺序访问时连续数组通常具有较好局部性。链表插入效率需要同时考虑查找目标成本。栈按照后进先出的规则管理元素。队列按照先进先出的规则组织数据。双端队列允许在两端插入或移除元素。优先队列按优先级选择下一个元素。堆结构可以高效维护部分优先顺序。哈希表通过哈希值定位候选存储位置。
路径压缩可以改善并查集的操作效率
路径压缩可以改善并查集的操作效率。排序算法按照键值建立元素之间的次序。稳定排序保留相同键元素的原始相对顺序。快速排序性能受到划分策略和输入影响。归并排序通过合并有序子序列完成排序。外部排序适合数据超过内存容量的情形。二分查找需要依赖满足顺序条件的数据。递归通过较小规模的同类问题构建答案。
笔记类型说明
来源:云沚生活观察