首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
李有魏来
掘友等级
获得徽章 2
动态
文章
专栏
沸点
收藏集
关注
作品
赞
78
文章 77
沸点 1
赞
78
返回
|
搜索文章
赞
文章( 77 )
沸点( 1 )
目标和 [从暴力dfs -> 状态记录 -> 动态递推 -> 状态压缩]
从最简单的dfs暴力逻辑;到利用空间记录重复计算,即记忆搜索;再到极致的空间换时间,即动态规划;最后到空间优化,即状态压缩。形成一个完整的逻辑链,一个完整的优化闭环。
不同路径 [DFS记忆化数组 & 动态规划]
DFS作为深度优先遍历,经常碰到需要一节点多次被遍历的情况,导致时间复杂度呈指数级。往往重复遍历目的就不是单词的访问节点了,而是需要该节点到某终点的一种状态(抽象),可用变量记录该节点的状态。
最长公共前缀 [分治 & 抽象二分练习]
对于一个问题,采用一题多解,才能深刻理解其考察的知识点,进行举一反三。最长公共前缀,可横向对比 / 竖向对比 / 最值对比 / 分治 / 二分方法来完成题解。
基本计算器 [括号匹配的变形]
发现括号匹配问题--求解基本表达式 / 对化学表达式的元素计数等相关问题,就像是扁平化嵌套列表一样,本质处理方式都是对树的前序遍历过程。
扁平化嵌套列表迭代器 [树的递归前序遍历 + 迭代前序遍历]
问题转换:将需求确认,结合已学知识,进行匹配->改进。列表的扁平化本质就是树的前序遍历,不过不需要父节点而已。树的前序遍历可以递归实现,也可以迭代实现。
二叉树的中序遍历 [递归 & 迭代]
中序遍历,递归进行左中右遍历,非常简单高效。迭代的方式稍显麻烦,不过也是遵循左中右遍历的原则。而在迭代方法中,将二叉树原地修改成双向循环链表,再进行遍历,则需要栈空间,就可以完成迭代版的中序遍历。
设计一个HashSet [hash函数 + 存数据的数组 + hash冲突]
hashSet拆分即hash & set,设计hash需要确定hash函数 + 存数据的数组 + hash冲突的解决办法。
最低票价 [无限定的01背包问题(面向时间型)]
动规规划和贪心都是训练逻辑思维的好题目,因为其中涉及问题抽象能力,需要将大问题准确的划分为规模更小性质相同的之问题。
根据字符出现频率排序 [尽量使用数组来实现 栈 / hash]
尽量用数组模拟栈 / hash,虽然数组也属于类级别,但是其处于JVM层面,比一般的HashMap / Stack类要快很多。
最大整除子集 [问题转换+排序+动规(面向前数组前部分)]
一般的问题转换并不是很巧秒,基本都是找到题目问题的特点,将其翻译成有规律的/更数学味的语言,从而用代码实现。除此之外,问题转换+前置+后置操作型属于经典算法考察方式了。
下一页
个人成就
文章被点赞
83
文章被阅读
17,251
掘力值
986
关注了
6
关注者
3
收藏集
1
关注标签
16
加入于
2022-04-27