
算法
文章平均质量分 74
算法入门、进阶
五道书童
随心所欲,想发就发
展开
-
双指针算法详解
双指针算法是一种常用的算法技巧,它通过维护两个指针(索引)在数据结构(通常是数组或链表)中协同工作,以高效解决特定问题。双指针算法通常可以将O(n²)的时间复杂度优化到O(n)。原创 2025-04-27 23:33:15 · 123 阅读 · 0 评论 -
程序时间复杂度计算与分析
程序的时间复杂度是衡量算法在最坏情况下运行时间随输入规模增长的变化趋势的数学表示。它描述了算法执行时间与输入数据规模之间的关系,通常用大O符号(O-notation)表示。原创 2025-04-21 10:15:00 · 788 阅读 · 0 评论 -
程序空间复杂度及数据结构分析
O(1):固定空间,如变量、原地操作。O(n):线性空间,如数组、链表、哈希表。O(n²):平方空间,如邻接矩阵存储稠密图。O(log n):对数空间,如平衡树递归栈深度。核心思路:分析算法中数据结构的存储需求及递归调用深度,结合输入规模n确定增长趋势,忽略常数项后用大O表示法描述。原创 2025-04-20 10:15:00 · 355 阅读 · 0 评论 -
动态规划算法详解与应用
动态规划(Dynamic Programming,简称DP)是一种用于解决和的高效算法设计方法。它通过将复杂问题分解为子问题,并存储子问题的解(避免重复计算),最终组合出原问题的解。原创 2025-04-10 00:15:00 · 815 阅读 · 0 评论