- 博客(36)
- 收藏
- 关注
原创 DAY37 动态归化Ⅰ基础题目
先确定dp[i]表示的意义、dp[i]有哪几个来源途径?不同的来源如何选择?也保证索引dp[n]是合法的。确定递推公式、遍历顺序。
2025-03-23 16:26:39
182
原创 DAY36贪心算法Ⅴ
和之前做的题很像,先排序、将第一个元素放入结果中根据边界条件不断更新数组边界。to_string()将数值类型转化为字符串类型。stoi()将字符串类型转化为数值类型。
2025-03-21 11:29:59
400
原创 DAY16 找树左下角的值 路径总和 构造二叉树
定义为:pair<TreeNode*, int>使用层序遍历迭代这道题非常简单。结构来存放这个栈里的元素。这个为栈里的一个元素。
2025-02-19 18:58:52
309
原创 DAY 09 字符串Ⅱ
这道题考察数组操作比较全面,需要注意的是去除多余空格的细节处理,以及反转元素时,开闭区间的处理。还是先整体反转后局部反转的思路。
2025-01-16 23:17:05
371
原创 DAY07 哈希表 三数之和 四数之和
要熟悉哈希表查找元素的几种情况,set和map的选取时机,元素大小固定时可以使用数组解决。还是要熟悉双指针法的使用。
2025-01-15 21:35:12
442
原创 DAY06 哈希表
关于哈希表:在要求快速查询,最小时间复杂度 O(1) 场景时候,需要想到哈希表。(查的快,还需要对查询出的数据有排序需求时,要想到红黑树)哈希表(感觉叫散列表更加直观):原始数据通过映射关系(哈希函数,一般是除留余数法),得到一个,映射过程中可能发生两个元素的位置相同的情况(哈希碰撞),降低哈希碰撞发生概率有两种设计:1.让哈希表的长度等于2.哈希表)时,要扩容哈希表(扩容大小也为素数大小,例如从7扩容到23),扩容后所有的元素在哈希表中的位置都要重新确定,因此扩容的代价还是很大的。
2025-01-13 19:28:58
762
原创 DAY04 链表相交 环形链表 倒序删除
链表的各种操作都有很强的类似性,设置虚拟头和灵活运用双指针这些思想都很重要。后面应该还会遇见类似的问题,要注意归纳方法的共性。
2025-01-11 21:05:43
602
原创 DAY 03 操作链表 反转链表
链表相较于数组,它的元素个数可以随时改变,每一个节点(Node)都是独立分配的,是不连续的,因此它不需要大块连续内存,内存利用率高。但是因为不连续,无法进行内存随机访问,只能从头节点开始逐节点遍历。设置一个虚拟头节点.数据域为0.地址域为head做链表题时动手画一画思路会更清晰第一遍写的时候定义结构体后面忘写会报这个错误:一道题包含了许多知识点,对链表和写法的练习。
2025-01-10 23:57:39
1029
原创 DAY02 滑动窗口 模拟类题 前缀和思想
目前只做了几道题,可能理解还比较浅,比较重要的思想数组元素的地址是连续的,所以删除是从后向前覆盖的过程双指针法是解决数组问题的重要方法模拟类问题的对边界问题要做到心中有数......有更多思考再补充。
2025-01-09 18:35:43
650
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅