首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
算法总结
ak啊
创建于2022-07-29
订阅专栏
个人算法练习中的记录总结
暂无订阅
共8篇文章
创建于2022-07-29
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
对快速幂算法
案例一:普通幂计算的效率问题 问题描述:计算 3^13,传统做法需要 12 次乘法: 时间复杂度:O(n),指数级增长时效率极低 案例二:快速幂递归分治 目标:将 3^13 分解为更小的问题 二进制分
高阶算法技巧分享三:单调栈与单调队列详解
高阶算法技巧:单调栈与单调队列详解 一、核心思想 单调栈和单调队列通过维护一个元素按特定顺序(递增或递减)排列的结构,将某些问题的复杂度从 O(n²) 优化到 O(n)。核心在于及时排除无效元素,减少
高阶算法技巧分享二:空间优化 Morris 遍历算法
空间优化 Morris 遍历算法 它能以 O(1) 额外空间完成二叉树中序遍历,适合内存敏感场景: 🎯 高级技巧解析: 空间压缩原理 利用叶子节点的空指针存储临时线索,将空间复杂度从 O(n)(递归栈
高阶算法技巧分享 一
1. 动态规划 + 状态压缩 核心思想:通过滚动数组或变量覆盖,将二维/三维DP压缩到一维,大幅降低空间复杂度。 应用场景:背包问题、路径问题等需要状态转移的场景。 示例(0-1背包问题,空间优化到O
记忆化(Memoization)
场景:处理递归问题时(比如斐波那契数列、爬楼梯问题),如果发现存在重复计算的子问题(如 fib(5) 多次计算 fib(3)),可以用 哈希表/数组 缓存结果,时间复杂度直接从指数级降到线性级! 以下
算法练习中的知识点整合
1、非递减顺序排列 非递减排列是指一个数列中的元素从左到右依次不减,或者说不降序排列。也就是说,如果数列中某个元素的值比它前面的元素小,那么它的值至少和前面的元素相等,即数列中不存在逆序对。如果数列中
时间复杂度对应的经典算法
数据范围 | 最大时间复杂度 | 可能用到的算法 | | --- | --- | | n <= 30 | 指数级别 | DFS + 剪枝 | | n <= 100 | n^3 | floyed、动态规
算法中常用的 求中间值向上取整方法
通常情况下 数组中取两个坐标的中间坐标的方式为mid = (x + y)/2 此方法 求得的mid结果是向下取整 如果想要的到向上取整的mid,一般都是这样计算 mid = (x - y + 1)/2