- 博客(13)
- 收藏
- 关注
原创 代码随想录算法训练营第十五天| 110.平衡二叉树 257. 二叉树的所有路径 404.左叶子之和 222.完全二叉树的节点个数
2. 用层序遍历的时候,直接用队列,写的比之前熟练了一些。注意把左右孩子入队的时候,要考虑是不是null。7/1 补 6/20. 最近态度不太对,只想快点完成任务,没有认真弄明白每一题。1. 用递归法比较简单。把根结点加上的时候就是在计数。1. 比较好写,用到之前写的 二叉树的最大深度。明天写,看一下回溯怎么完成的。逻辑好复杂,看了题解才写出来。222.完全二叉树的节点个数。257. 二叉树的所有路径。
2024-07-01 23:31:16
168
原创 代码随想录算法训练营第十四天| 226.翻转二叉树 101. 对称二叉树 104.二叉树的最大深度 111.二叉树的最小深度
和上一题有一些出入,需要考虑当某一边 为null的时候、正确写法:里面有一段比较两个二叉树是否相等的代码。104.二叉树的最大深度。111.二叉树的最小深度。6/30 补 6/19。遍历然后交换左右孩子。101. 对称二叉树。
2024-06-30 15:28:55
175
原创 代码随想录算法训练营第十一天|二叉树 递归遍历 迭代遍历 层序遍历
1. 前序遍历和后序遍历的处理基本相似。前序遍历是中左右,后序遍历是左右中。后序遍历的时候调成 中右左,然后将结果反转就可以了。1. 递归遍历如果会写的话,比较省事。比较重要的是别忘了递归的终止条件。有点数学题中是n=0或者1,有的情况是 指针为空。一直找左子树的左子树,找到最左。处理完了之后,再处理中和右。当处理到最右边,cur已经空了,但是此时栈里还有值,即使while的循环条件。1. 直接输出比较好些,一行一行的按照容器输入,设计了size的方法。2. 二维数组里面的每个元素是一个一维数组。
2024-06-20 16:33:41
117
原创 代码随想录算法训练营第十天|栈与队列 150. 逆波兰表达式求值
1. C++中 没有 int( "3"+"+"+"4"),不合法,C++中没有字符串相加再计算的操作,忘记是哪个语言的特性了。2. stoll 将字符串转换成 long long 型。150. 逆波兰表达式求值。
2024-06-17 23:20:40
113
原创 代码随想录算法训练营第九天|栈与队列 232.用栈实现队列 225. 用队列实现栈 20. 有效的括号 1047. 删除字符串中的所有相邻重复项
232.用栈实现队列。
2024-06-16 21:03:22
411
原创 代码随想录算法训练营第八天|字符串 151.翻转字符串里的单词 卡码网:55.右旋转字符串
1. 和151的思路一样,先 整体反转,再部分反转。复杂的字符串反转可以考虑这个思路。1. 复习了 移除元素中的双指针法, 本题的双指针解法改天再看,猪脑过载。2. s.erase()的使用不熟悉。
2024-06-14 22:00:49
337
原创 代码随想录算法训练营第六天|哈希表 454.四数相加II 383. 赎金信 【15*】. 三数之和 【18*】. 四数之和
454.四数相加IImap的初始化疑惑。
2024-06-12 11:19:43
259
原创 代码随想录算法训练营第五天|哈希表 242.有效的字母异位词 349. 两个数组的交集 202. 快乐数 1. 两数之和
今天光速学习了 数组,set,map的相关操作,然后才做题。数组的操作都要忘干净了。常用操作如下: 查找用的很多,查找的返回是迭代器。删除没怎么用。
2024-06-11 17:00:36
148
1
原创 代码随想录算法训练营第四天|链表 24. 两两交换 19.删除倒数第n个 160.链表相交 142.环形链表
1. ->next (=null)访问到空指针没问题,但是 ->next->next(null->next) 访问空指针的next就不行了,会出现 member access within null pointer的问题。此题小心while循环里面, 判断条件,小心引用空指针,找好边界。1. 明天继续看一下 为什么n=1 ,n至少为1圈。复杂一点的双指针方法,学习思路。傻子选择直接两次遍历。
2024-06-08 22:28:08
135
原创 代码随想录算法训练营第三天|链表 203. 移除元素 707.设计链表 206.反转链表
1. 用while循环的时候,可以用边界点来确定循环条件,例如 在某点插入元素 ,把n=0 带进while循环试一下。4. 不要用private 的m_size遍历做循环条件,我劝你别乱用。2. 有index的,要检查一下 范围是否合规。3. 写的链表结构体,就是使用 虚拟头结点的。1. 没用pre,明天再写一遍。1. C++别忘了内存释放。2. 注意访问空指针的问题。
2024-06-07 23:04:08
179
原创 代码随想录算法训练营第二天|数组 977. 有序数组平方 209.长度最小子数组 59.螺旋矩阵
for循环的循环条件和初始值是有关系的,写的时候要么确定循环次数要么确定终止值。)这种循环写法循环了n次,但是注意初始值变化后,就不是n次了。容易惯性,刻舟求剑。使用滑动窗口的时候,确定好窗口的起始和终止。滑动窗口的起始位置可以减少重复计算前面的值。滑动窗口的灵魂在于起始位置和终止位置都很灵活。
2024-06-06 15:07:00
153
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人