自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 代码随想录算法训练营第14天 | 102.二叉树的层序遍历、226.翻转二叉树、101. 对称二叉树

用前序和后续的递归写起来比较容易,中序不行。核心思想是记录每层元素的size。

2023-10-26 18:26:18 89

原创 代码随想录算法训练营第13天 | 144.二叉树的前序遍历、94.二叉树的中序遍历、145.二叉树的后序遍历

【代码】代码随想录算法训练营第13天 | 144.二叉树的前序遍历、

2023-10-09 18:40:08 92 1

原创 代码随想录算法训练营第12天 | 239. 滑动窗口最大值、 347.前 K 个高频元素

尤其注意poll元素的时候,该元素什么时候出队列。小顶堆的应用,比快排要快一些。

2023-10-07 12:26:07 81 1

原创 代码随想录算法训练营第11天 | 20. 有效的括号、1047. 删除字符串中的所有相邻重复项、150. 逆波兰表达式求值

1.String类型比较用equals,且加减乘除放前面避免空指针异常。“==”比较的是地址。2.减法和除法注意从栈出来两个数的顺序。反括号进栈,出栈就只需要比对是否相等。

2023-10-05 21:26:13 81

原创 代码随想录算法训练营第10天 | 232.用栈实现队列、225. 用队列实现栈

【代码】代码随想录算法训练营第10天 | 232.用栈实现队列、225. 用队列实现栈。

2023-10-04 00:00:13 47 1

原创 代码随想录算法训练营第9天 | 28.找出字符串中第一个匹配项的下标、459.重复的子字符串

这里是求next数组的解法,另一种解法是将两个字符串拼接,掐头去尾,再在里面找是否有原始字符串。重点在于求next数组。

2023-10-02 22:45:55 92 1

原创 代码随想录算法训练营第8天 | 344.反转字符串、541. 反转字符串II、剑指Offer 05.替换空格、151.翻转字符串里的单词、剑指Offer58-II.左旋转字符串

一种直接创建一个StringBuilder对象,正向遍历,另外一种方法是先算出总共的空格数量,然后扩充数组,再进行倒着双指针遍历填入"%20"更简单的方法是先翻转n前面的字符串,再翻转n后面的字符串,最后再把整个字符串翻转。很基础的一道题,重点是循环数组的一半就可以了。主要在于i循环时的增量以及传参数时边界的判定。

2023-09-28 23:43:41 34

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

集合或者自制哈希,集合开销时间反而更大。在三数之和上又多了层循环。

2023-09-27 01:27:46 41

原创 代码随想录算法训练营第6天 | 242.有效的字母异位词、349. 两个数组的交集、202. 快乐数、1. 两数之和

注意但凡出现过循环就不是快乐数,注意怎么取一个数字的每一位。注意是遍历当前元素找前面的元素是否能组成target。需要掌握Java集合的相关知识。

2023-09-26 00:33:10 69

原创 代码随想录算法训练营第4天 | 24. 两两交换链表中的节点、19.删除链表的倒数第N个节点、160.相交链表、142.环形链表II

快指针走的是慢指针的两倍,如果是快指针先走一定是slow.next == fast即慢指针走完刚好追上快指针。注意点是当节点的next变动后,它原先所指的节点该怎么获得地址。判断有环比较简单,直接快慢指针,判断入口根据数学公式推出来。一定会在慢指针进入环的第一圈相遇。

2023-09-24 21:47:37 97 1

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

双指针+零时指针或递归(适合递归掌握比较熟练的写)主要注意是否设计虚拟头结点。考研时数据结构链表最基本的题。

2023-09-23 18:07:44 59 1

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

进阶解法:双指针,因为给出的数组是非递减顺序,所以平方后最大的数一定在两头,两个指针一头一尾,慢慢向中间逼近。双指针,后面的指针先往后走,达到要求之后前面的指针再往后缩进。主要注意以什么来循环,区间,左开右闭,以及n为基数还是偶数。暴力解法:每个数平方之后用快排。

2023-09-21 23:17:42 205

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

双指针思路有两种,一种是快慢指针,一种是相向双指针。需要注意的点,区间左闭右闭还是左闭右开。

2023-09-20 23:09:20 257

空空如也

空空如也

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

TA关注的人

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