From c3f746a25d81c299ca8a3efa4fc1f9e8d45509d3 Mon Sep 17 00:00:00 2001 From: qyg <1600314850@qq.com> Date: Fri, 22 Apr 2022 10:55:01 +0800 Subject: [PATCH 1/4] =?UTF-8?q?0209.=E9=95=BF=E5=BA=A6=E6=9C=80=E5=B0=8F?= =?UTF-8?q?=E7=9A=84=E5=AD=90=E6=95=B0=E7=BB=84=EF=BC=9A=E8=B0=83=E6=95=B4?= =?UTF-8?q?=E7=AC=94=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- problems/0209.长度最小的子数组.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/problems/0209.长度最小的子数组.md b/problems/0209.长度最小的子数组.md index 82a11381..23b27edd 100644 --- a/problems/0209.长度最小的子数组.md +++ b/problems/0209.长度最小的子数组.md @@ -112,7 +112,7 @@ public: **一些录友会疑惑为什么时间复杂度是O(n)**。 -不要以为for里放一个while就以为是O(n^2)啊, 主要是看每一个元素被操作的次数,每个元素在滑动窗后进来操作一次,出去操作一次,每个元素都是被被操作两次,所以时间复杂度是 2 × n 也就是O(n)。 +不要以为for里放一个while就以为是O(n^2)啊, 主要是看每一个元素被操作的次数,每个元素在滑动窗后进来操作一次,出去操作一次,每个元素都是被操作两次,所以时间复杂度是 2 × n 也就是O(n)。 ## 相关题目推荐 From 4d668b0efc89cd15f50dcb93da01e1ace633b07b Mon Sep 17 00:00:00 2001 From: qyg <1600314850@qq.com> Date: Fri, 22 Apr 2022 11:02:11 +0800 Subject: [PATCH 2/4] =?UTF-8?q?0059.=E8=9E=BA=E6=97=8B=E7=9F=A9=E9=98=B5II?= =?UTF-8?q?=EF=BC=9A=E8=B0=83=E6=95=B4=E7=AC=94=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- problems/0059.螺旋矩阵II.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/problems/0059.螺旋矩阵II.md b/problems/0059.螺旋矩阵II.md index 5c679982..1162c7eb 100644 --- a/problems/0059.螺旋矩阵II.md +++ b/problems/0059.螺旋矩阵II.md @@ -30,7 +30,7 @@ 相信很多同学刚开始做这种题目的时候,上来就是一波判断猛如虎。 -结果运行的时候各种问题,然后开始各种修修补补,最后发现改了这里哪里有问题,改了那里这里又跑不起来了。 +结果运行的时候各种问题,然后开始各种修修补补,最后发现改了这里那里有问题,改了那里这里又跑不起来了。 大家还记得我们在这篇文章[数组:每次遇到二分法,都是一看就会,一写就废](https://programmercarl.com/0704.二分查找.html)中讲解了二分法,提到如果要写出正确的二分法一定要坚持**循环不变量原则**。 @@ -47,7 +47,7 @@ 可以发现这里的边界条件非常多,在一个循环中,如此多的边界条件,如果不按照固定规则来遍历,那就是**一进循环深似海,从此offer是路人**。 -这里一圈下来,我们要画每四条边,这四条边怎么画,每画一条边都要坚持一致的左闭右开,或者左开又闭的原则,这样这一圈才能按照统一的规则画下来。 +这里一圈下来,我们要画每四条边,这四条边怎么画,每画一条边都要坚持一致的左闭右开,或者左开右闭的原则,这样这一圈才能按照统一的规则画下来。 那么我按照左闭右开的原则,来画一圈,大家看一下: @@ -59,7 +59,7 @@ 一些同学做这道题目之所以一直写不好,代码越写越乱。 -就是因为在画每一条边的时候,一会左开又闭,一会左闭右闭,一会又来左闭右开,岂能不乱。 +就是因为在画每一条边的时候,一会左开右闭,一会左闭右闭,一会又来左闭右开,岂能不乱。 代码如下,已经详细注释了每一步的目的,可以看出while循环里判断的情况是很多的,代码里处理的原则也是统一的左闭右开。 From 664746fe155a137f01c5d1478b0325c2dd8e0ffe Mon Sep 17 00:00:00 2001 From: qyg <1600314850@qq.com> Date: Fri, 22 Apr 2022 11:21:18 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E6=95=B0=E7=BB=84=E6=80=BB=E7=BB=93?= =?UTF-8?q?=E7=AF=87=EF=BC=9A=E8=B0=83=E6=95=B4=E7=AC=94=E8=AF=AF=EF=BC=8C?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E4=BA=8C=E7=BB=B4=E6=95=B0=E7=BB=84=E7=9A=84?= =?UTF-8?q?=E5=86=85=E5=AE=B9=E6=98=AF=E9=92=88=E5=AF=B9Java=E8=AF=AD?= =?UTF-8?q?=E8=A8=80=E7=9A=84=E9=99=90=E5=AE=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- problems/数组总结篇.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/problems/数组总结篇.md b/problems/数组总结篇.md index d256298b..39fa17a6 100644 --- a/problems/数组总结篇.md +++ b/problems/数组总结篇.md @@ -43,19 +43,19 @@ **那么二维数组在内存的空间地址是连续的么?** -我们来举一个例子,例如: `int[][] rating = new int[3][4];` , 这个二维数据在内存空间可不是一个 `3*4` 的连续地址空间 +我们来举一个Java的例子,例如: `int[][] rating = new int[3][4];` , 这个二维数组在内存空间可不是一个 `3*4` 的连续地址空间 看了下图,就应该明白了: -所以**二维数据在内存中不是 `3*4` 的连续地址空间,而是四条连续的地址空间组成!** +所以**Java的二维数组在内存中不是 `3*4` 的连续地址空间,而是四条连续的地址空间组成!** # 数组的经典题目 在面试中,数组是必考的基础数据结构。 -其实数据的题目在思想上一般比较简单的,但是如果想高效,并不容易。 +其实数组的题目在思想上一般比较简单的,但是如果想高效,并不容易。 我们之前一共讲解了四道经典数组题目,每一道题目都代表一个类型,一种思想。 @@ -115,7 +115,7 @@ 在这道题目中,我们再一次介绍到了**循环不变量原则**,其实这也是写程序中的重要原则。 -相信大家又遇到过这种情况: 感觉题目的边界调节超多,一波接着一波的判断,找边界,踩了东墙补西墙,好不容易运行通过了,代码写的十分冗余,毫无章法,其实**真正解决题目的代码都是简洁的,或者有原则性的**,大家可以在这道题目中体会到这一点。 +相信大家有遇到过这种情况: 感觉题目的边界调节超多,一波接着一波的判断,找边界,拆了东墙补西墙,好不容易运行通过了,代码写的十分冗余,毫无章法,其实**真正解决题目的代码都是简洁的,或者有原则性的**,大家可以在这道题目中体会到这一点。 # 总结 From 074937378aad536271afd42fdb5cc27a1f193f7f Mon Sep 17 00:00:00 2001 From: qyg <1600314850@qq.com> Date: Fri, 22 Apr 2022 11:42:50 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E9=93=BE=E8=A1=A8=E7=90=86=E8=AE=BA?= =?UTF-8?q?=E5=9F=BA=E7=A1=80=EF=BC=9A=E8=B0=83=E6=95=B4=E7=AC=94=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- problems/链表理论基础.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/problems/链表理论基础.md b/problems/链表理论基础.md index 095282f5..2fe9f14c 100644 --- a/problems/链表理论基础.md +++ b/problems/链表理论基础.md @@ -24,7 +24,7 @@ ## 双链表 -单链表中的节点只能指向节点的下一个节点。 +单链表中的指针域只能指向节点的下一个节点。 双链表:每一个节点有两个指针域,一个指向下一个节点,一个指向上一个节点。 @@ -56,7 +56,7 @@ ![链表3](https://img-blog.csdnimg.cn/20200806194613920.png) -这个链表起始节点为2, 终止节点为7, 各个节点分布在内存个不同地址空间上,通过指针串联在一起。 +这个链表起始节点为2, 终止节点为7, 各个节点分布在内存的不同地址空间上,通过指针串联在一起。 # 链表的定义