首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
算法笔记
知静616067754
创建于2025-01-14
订阅专栏
算法学习过程的感悟与思路分享
暂无订阅
共13篇文章
创建于2025-01-14
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
算法练习-字符串乘法
数字字符串乘法唯一的解法就是按照乘法规则,逐位相乘、累加、进位... 取巧整数乘法都将受到溢出制裁。
算法练习-螺旋数组
螺旋矩阵处理长宽非等长矩阵非常麻烦,如果是想象有四面墙不断收缩,那么就方便多了:不断++--收缩其边界值。
算法练习-使用前缀和方法解决`和为K的顺序子数组`
无法使用滑动窗口过所有用例,那就用前缀和方法来解决和为K的顺序子数组的问题吧:累计前0~i元素的和,当sum[i] - sum[j] == k时,说明j~i之间的连续子数组的和为K。
算法练习-无重复最长序列
字符串的最长无重字符子串长度:检查滑动窗口右边界新字符是否在hashset,当窗口内不满足条件时,移动左边界并删除左边界的hashset值,使得右边界反复更新获得最长不重复子串长度。
算法练习-最长连续序列
数组中寻找最长的连续数字序列无法通过哈希值来判断数组元素连续长度多少,但是可以通过在map中搜索序列起始值,再搜索该值的+1、+2 ... +(size - i + 1)是否存在来AC。
算法练习- LRU实现
实现LRU算法的难点在于get和set都必须是O(1)时间复杂度,思路是以双向链表按顺序排布节点,以hashmap记录key-val值。
算法练习-常数空间解决随机链表的复制方法
不使用map的方案是,将新节点挂载在老节点的next,这样新节点random的只需要让通过老节点的random访问next即可,最后分离新旧链表。
算法练习- K个一组反转链表
绝妙的递归解决方法:终止边界就是链表不足K个,否则反转K个节点,并把反转后的尾部节点后序继续继续反转。
算法练习-删除链表的倒数第 N 个结点
倒数第N个这种题目的通用解法是双指针,但是链表删改容易犯错,需要补充虚拟头节点这一利器才能简洁地实现。
算法练习-二叉树的直径
最长二叉树路径的两端都必然存在一个中心节点,计算中心节点的左子树+右子树更新二叉树的最长路径,再去更新全局最长路径的大小。
算法练习-踩坑历数‘路径总和3’
路径总和3求解路径时不要求从根节点开始,也不要求在叶子节点结束,个人的解法时分解成一个个子问题累加。
算法笔记-从二叉树原地构建链表
从二叉树构建前序链表时,由于不能一边构建一边遍历,因此只能后序遍历:遍历完,回溯栈帧时修改节点才能保持二叉树遍历的顺序。
算法笔记-从前序中序构建二叉树
构建思路 1.前序的第一个元素是二叉树根节点,该元素在中序数组的左边刚好是左子树的中序序列,右边是右子树的中序序列。 2.递归法是,使用前序第一个元素找出节点值,然后根据该元素找出节点的左子树和右子树