自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 代码随想录算法训练营第二十五天| 491.递增子序列 46.全排列 47.全排列 II 51.N皇后

回溯算法最后一篇,一定要注意设计回溯递归时的还原现场、以及递归函数本身的传参、终止条件要素。在含有重复答案时需要考虑去重,常用方法有同树层去重以及哈希集合的方式。进阶题目二刷时再来练手。文章图片来源:代码随想录 (https://programmercarl.com/)

2024-09-01 16:26:43 583

原创 代码随想录算法训练营第二十四天| 93.复原IP地址 78.子集 90.子集II

子集树遍历过程中的去重操作应该多熟悉一点。文章图片来源:代码随想录 (https://programmercarl.com/)

2024-08-29 15:24:55 510

原创 代码随想录算法训练营第二十三天| 39. 组合总和 40.组合总和II 131.分割回文串

回溯法的进阶应用。在编写回溯算法时仍要注意递归的逻辑结构、终止条件和剪枝条件、循环的边界条件,以及递归返回时数值的恢复(回溯),都是回溯算法的重点问题。文章图片来源:代码随想录 (https://programmercarl.com/)

2024-08-28 18:51:43 1025

原创 代码随想录算法训练营第二十二天| 回溯算法理论基础 77. 组合 216.组合总和III 17.电话号码的字母组合

回溯法章节开始,逐渐开始正式复习算法设计课的知识。文章图片来源:代码随想录 (https://programmercarl.com/)

2024-08-23 15:15:47 2380

原创 代码随想录算法训练营第二十一天| 669. 修剪二叉搜索树 108.将有序数组转换为二叉搜索树 538.把二叉搜索树转换为累加树

二叉树部分一刷结束,通过算法训练营强力巩固了一下数据结构缺少的实操课,熟悉了二叉树的各种基本操作,并且着重练习了递归的设计。文章图片来源:代码随想录 (https://programmercarl.com/)

2024-08-20 22:55:46 617

原创 代码随想录算法训练营第二十天| 235. 二叉搜索树的最近公共祖先 701.二叉搜索树中的插入操作 450.删除二叉搜索树中的节点

对于二叉搜索树中的删除结点操作应加强复习。文章图片来源:代码随想录 (https://programmercarl.com/)

2024-08-19 21:19:42 914

原创 代码随想录算法训练营第十七天| 654.最大二叉树 617.合并二叉树 700.二叉搜索树中的搜索 98.验证二叉搜索树

对于递归返回的设计思想还需要进一步学习。文章图片来源:代码随想录 (https://programmercarl.com/)

2024-08-19 20:38:43 320

原创 代码随想录算法训练营第十一天| 150. 逆波兰表达式求值 239. 滑动窗口最大值 347.前 K 个高频元素

接触到了单调队列和优先级队列两个新工具,对于滑动窗口最大值和前k个高频元素的代码思想应再进行复习理解。文章图片来源:代码随想录 (https://programmercarl.com/)

2024-08-19 15:52:18 698

原创 代码随想录算法训练营第十六天| 513.找树左下角的值 112. 路径总和 106.从中序与后序遍历序列构造二叉树

仍然是二叉树遍历与递归的应用,中序后序构造二叉树题目较难,需要深入研究各种遍历的特点。在编写递归函数时仍要注意各种逻辑关系与终止条件是否合理。文章图片来源:代码随想录 (https://programmercarl.com/)

2024-08-16 23:56:46 735

原创 代码随想录算法训练营第十五天| 222.完全二叉树的节点个数 110.平衡二叉树 257. 二叉树的所有路径 404.左叶子之和

依然是对于二叉树遍历和递归函数的考察。之后在设计二叉树的递归函数时要注意尽可能在递归函数体内只操作当前结点,能一定程度上减小代码量,提高可读性。文章图片来源:代码随想录 (https://programmercarl.com/)

2024-08-15 19:16:37 877

原创 代码随想录算法训练营第十八天| 530.二叉搜索树的最小绝对差 501.二叉搜索树中的众数 501.二叉搜索树中的众数

本日题目是对二叉树以及二叉搜索树性质的综合应用考察,要牢记二叉搜索树中序遍历有序的性质;在编写递归代码时也要注意各项条件。文章图片来源:代码随想录 (https://programmercarl.com/)

2024-08-15 15:58:19 652

原创 代码随想录算法训练营第十四天| 226.翻转二叉树 101. 对称二叉树 104.二叉树的最大深度 111.二叉树的最小深度

本日题目主要为二叉树遍历的一些拓展应用,基本算法思想难度不大,但要注意循环迭代的逻辑关系,以及题目要求中的限制条件。文章图片来源:代码随想录 (https://programmercarl.com/)

2024-08-14 18:15:01 815

原创 代码随想录算法训练营第十天| 232.用栈实现队列 225. 用队列实现栈 20. 有效的括号 1047. 删除字符串中的所有相邻重复项

栈与队列是基础的数据结构之一,打好数据结构的应用基础很重要。文章图片来源:代码随想录 (https://programmercarl.com/)

2024-08-14 17:02:49 868

原创 代码随想录算法训练营第十三天| 二叉树理论基础 深度优先遍历 广度优先遍历(层次遍历)

树是nn0n(n>0)nn0个结点的有限集合,n0n=0n0时称为空树;有且仅有一个结点被称为根root(root)root,每个结点可以有若干个子结点(子树),没有子结点的结点被称为叶子结点对于一棵树TTT,树中每个结点都含有TlTrT_l, T_rTl​Tr​两棵子树(可以为空树),则该树称为二叉树本日内容主要是对二叉树数据结构的基本理论以及遍历方式的复习,题目并不算难,在于打好基本功。

2024-08-11 16:38:47 571

原创 代码随想录算法训练营第九天| 151.翻转字符串里的单词 卡码网:右旋字符串 28. 实现 strStr() 459.重复的子字符串

对字符串的基本操作逐渐熟悉,字符串的进阶题目趋向于自己修改或设计算法解决特定问题,并且需要注意find()与erase()类函数本身的时间复杂度(OnO(n)On字符串部分需要强调对KMPKMPKMP算法复习。文章部分图片来源:代码随想录 (https://programmercarl.com/)

2024-07-31 00:12:02 937

原创 头秃复习:KMP 算法解 LeetCode 28. 实现 strStr()

KMPKMPKMPKnuth−Morris−PrattKMPIIIIIInextnext基础知识强调与重点注解与补充常规知识点。

2024-07-31 00:10:03 1094

原创 代码随想录算法训练营第八天| 344.反转字符串 541. 反转字符串II 卡码网:54.替换数字

本日主要内容为字符串的使用与操作,算法方面难度并不高,主要在于对自己使用的编程语言中的字符串一些基本的性质及操作,对于一些C++类中的函数使用应再熟悉一下。文章图片来源:代码随想录 (https://programmercarl.com/)

2024-07-24 15:08:28 839

原创 代码随想录算法训练营第七天| 454.四数相加II 383. 赎金信 15. 三数之和 18. 四数之和

可以提升时间效率,因为map需要构建红黑树并确定哈希函数,在相同时间复杂度下效率更低。这道题并不太适合使用哈希法,因此只简单讲述一下思路:对数组构建一个两层的。首先,对四个数组进行合并处理,合并为两个数组。有相似之处,可以对两数之和的算法进行修改用于本题。存放其中两个数组所有元素可能得到的加和值以及数量,然而实际上本题可以使用数组进行哈希表的实现,相比。是否出现过,将符合条件的三元组放入输出的数组中。的全部元素,并且相同的两个字母算两个元素,记录。值的相反数,若能找到,那么元组数应等于。

2024-07-23 19:09:52 829

原创 代码随想录算法训练营第六天| 哈希表理论基础 242.有效的字母异位词 349. 两个数组的交集 202. 快乐数 1. 两数之和

由于学校教材对于哈希表的教学主要在于理论部分,并且笔者对于哈希表的实际操作也不多,在面对哈希表部分时有些无从下手。后续应借助力扣题目的练习继续加强对于哈希表部分的理解与实际操作能力,在实际开发场景中巧妙使用本章的哈希表数据结构优化算法。文章图片来源:代码随想录 (https://programmercarl.com/)

2024-07-22 17:23:00 993

原创 代码随想录算法训练营第四天| 24. 两两交换链表中的节点 19.删除链表的倒数第N个节点 面试题 02.07. 链表相交 142.环形链表II 链表总结

本日的题目开始上难度了(流汗黄豆),第一题为较为简单的指针操作问题,后三道都涉及到快慢双指针的灵活应用,较笔者的思路而言都要更优。说明笔者在链表的双指针操作方面仍有所欠缺,仍应继续学习强化。在快慢指针的应用方面,应强调快慢指针设置的差值的重要性,通过快慢指针的下标差巧妙实现题目要求。对于题目的代数运算方面有些欠缺,对于某些题目与数学理论的联系探究还应更深入一些。文章图片来源:代码随想录 (https://programmercarl.com/)

2024-07-20 16:21:33 820

原创 代码随想录算法训练营第三天| 链表理论基础 203.移除链表元素 707.设计链表 206.反转链表

/出于学习目的与专业需求考虑,本系列文章将附带部分C++与Python语法内容,用作语言的学习与复习链表章节开始,c++中的链表操作涉及到大量的指针运算,因此在设计算法时需要谨慎考虑指针的性质与互相之间的指向关系,对于指针特性与一些细节的理解很重要(指针变量的初始化);链表是最基础的数据结构之一,开始复习数据结构内容,对于其他数据结构类型也需要开始着手复习一遍。文章图片来源:代码随想录 (https://programmercarl.com/)

2024-07-19 17:38:31 758

原创 代码随想录算法训练营第二天| 977.有序数组的平方 209.最小长度的子数组 59.螺旋矩阵II

数组:数组是存放在连续内存空间上的相同类型数据的集合,最基础的数据结构注意要点数组下标都是从0开始的数组内存空间的地址是连续的数组的元素是不能删的,只能覆盖(固定的一段内存空间)

2024-07-18 20:37:52 1022

原创 代码随想录算法训练营第一天| 704. 二分查找、27. 移除元素

第一日练习数组与双指针操作方面内容,需要注意循环时边界值的控制,以及二分法使用不同开闭区间的处理差别。

2024-07-17 16:27:58 1340

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除