自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 代码随想录算法训练营第七天 | 454.四数相加||、383.赎金信、15.三数之和、18.四数之和-做完前两个

sum在第二组for loop里代表的是nums3和nums4的sum,而0-sum就相当于要找出满足题目要求的四个数相加等于0的那个另一半,打个比方map里存了nums1+nums2的和为4,那我们在这个0-sum里就要立志找出-4,所以和才能等于0,map.get(0-sum) (sum = -4)就能找出之前存下的4凑成对。还有需要注意因为重复的数值也要算进去,所以我们res+=的是前两组出现过的次数,比方后两组找到了一个符合的一半sum需要凑对,前两组有三个不同位置上的数值符合,那就要算成三个!

2024-04-30 07:31:19 111 1

原创 代码随想录算法训练营day06| 242.有效的字母异位词|349.两个数组的交集|202.快乐数|1.两数之和 - 剩两道题没做

这个题要熟悉java unicode(ASCII)的知识,知道比如'b'-'a'等于1,所以这里调用string.charAt(i)来调取给到的string的每一个char都是什么,从而在新的数组中的相应index里存起来,string s存一个就+1,string t是存一个就-1,所以最后的这个arr数组应该所有元素都是0不能多不能少。set.contains()也是set里的method,这里contains()时间复杂度是O(1),这就体现出来set的优势来,查找快!

2024-04-23 11:07:50 242

原创 代码随想录算法训练营第四天 | 24.两两交换链表中的节点、19删除链表中的第N个节点、面试题链表相交、142.环形链表(没写完这周末4.28补上)

注意要提前设置好dummy.next = head. 前面几个链表题不需要链接dummy和head是因为不需要默认链接而是后续会设好pre.next是cur,但是这个题必须提前设置好next之后,进while循环就直接开始调换顺序了!这个题主要就是搞清楚每一轮需要调换的指向顺序以及设置的cur和pre都代表什么,设置了dummy head之后,这个步骤一到三就在所有的node上面成立了,每一轮都是在调换相邻两个node的位置。调换的顺序是从步骤三开始的,原因也是因为为了避免值被其他操作覆盖。

2024-04-23 07:52:35 130

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

注意while loop里的核心逻辑,第一段代码我用的dummy,既然设置了dummy就不要想head的val的问题了,也就是说不用管head.next需要单独设置指向谁这个问题,而是直接用pre and cur来走整体逻辑。需要注意pre和cur两个变量都需要往后assign。

2024-04-22 10:31:11 284

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

因为设置的时候是right和bottom都是n-1,所以在循环的时候一定要把等于号包括进去,除非设置的是n,那for loop可以不加等号。这个题思路就是双指针,平方的话排序肯定两边最大,不可能中间最大,所以大的思路应该是指针指向左右两端然后往中间挪动,然后有一个k指向新Int array的index. 这里犯了个错,不是in place修改的,需要设置一个res array存放平方过了的int不然被原本的数被覆盖掉就会结果错误。sliding window的复杂度大多都是O(n)的!

2024-04-21 03:06:31 309

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

思路逻辑基本没啥问题但是卡在了左右指针的取值上,就是开闭区间容易搞混。一定要注意在左闭右闭情况下,取right = mid-1, left = mid + 1,不能直接设置成Mid因为已经检查过mid不等于target了,否则会喜提time limit exceeded错误掉进inifinite loop。这题用的就是快慢指针,K就是慢指针,用来存贮找到了的不等于val的数,同时k最后的长度被返回。暴力解完之后才反应过来题目要求O(log n)复杂度,果然没那么简单哈哈。

2024-04-19 12:56:47 143 1

空空如也

空空如也

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

TA关注的人

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