![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
代码随想录
文章平均质量分 68
m0_62060691
这个作者很懒,什么都没留下…
展开
-
代码随想录算法 - 字符串 Part1
看到这道题目一脸懵逼没看懂啥意思,搞了半天才明白是:从头开始,第0到k个反转 k+1 到2k正常,2k+1到3k反转。所以解法就很明确了循环一遍字符串,每隔2k个反转前k个,尾数不够k个时全部反转。给定一个字符串 s,它包含小写字母和数字字符,请编写一个函数,将字符串中的字母字符保持不变,而将每个数字字符替换为number。给定一个字符串 s 和一个正整数 k,请编写一个函数,将字符串中的后面 k 个字符移到字符串的前面,实现字符串的右旋转操作。编写一个函数,其作用是将输入的字符串反转过来。原创 2023-12-07 23:19:59 · 92 阅读 · 1 评论 -
代码随想录算法 - 哈希表Part2
然后用2次循环遍历后两个数组 判断Map中是否有相加等于0的key 然后结果加上key对应value中的值;:看到这道题目的第一想法是用数组作为哈希表处理,因为题中只有小写字母 所以数组长度固定为26 用来记录magazine 中字母出现的次数。(1)getOrDefault(key, default)如果存在key, 则返回其对应的value, 否则返回给定的默认值。:看到这道题目的第一想法是暴力循环遍历,当然这样是不行滴,没思路看视频。答案中不可以包含重复的三元组。:脑瓜子嗡嗡的,看视频。原创 2023-12-06 01:22:46 · 55 阅读 · 1 评论 -
代码随想录算法 - Day5 哈希表Part1
看到这道题目的第一想法是直接排序equals判断一下就能搞定,看完文章哈希法也得掌握。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。:看到这道题目的第一想法是用集合的无序性去帮助我们做去重以得到交集结果。:看到这道题目就想到可以用到HashMap,因为工作中用到过 /滑稽。:看到这道题目的第一想法还是用集合处理,直接上HashSet开搞。可以先对长度比较,不相等直接返回即可。整数,并返回它们的数组下标。编写一个算法来判断一个数。你可以按任意顺序返回答案。原创 2023-12-05 02:23:16 · 65 阅读 · 0 评论 -
代码随想录算法 - Day4 链表Part2
看题目没思路,迷迷糊糊的,看完视频恍然大悟原来是要指针相等,不用过于关注所求交点的数值。给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。,每次都移动一次,直到快指针指向空,此时慢指针指向的就是待删除的元素的前一个元素,然后将待删除元素删除即可。:看到这道题目的第一想法是用快慢指针来找环,如果两者相遇则说明链表存在环。,返回链表开始入环的第一个节点。给你一个链表,删除链表的倒数第。个结点,并且返回链表的头结点。原创 2023-12-05 00:35:20 · 69 阅读 · 0 评论 -
代码随想录算法 - Day3 链表Part1
看到这道题目的第一想法是直接在原有链表是处理,看了视频虚拟节点法是一种不错的做法(在头节点前设置一个虚拟头节点再进行删除操作):看到这道题目的第一想法是用双指针处理,看完递归写法发现也行。以指示链表中的上一个节点。假设链表中的所有节点下标从。你可以选择使用单链表或者双链表,设计并实现自己的链表。,请你反转链表,并返回反转后的链表。是指向下一个节点的指针/引用。如果是双向链表,则还需要属性。,请你删除链表中所有满足。给你一个链表的头节点。原创 2023-12-04 23:31:18 · 95 阅读 · 0 评论 -
代码随想录算法 - Day2 数组Part2
看到这道题目的第一感觉没那么简单,连续子数组,就可以从数组第一个元素遍历,直到找到一个大于target的子数组然后统计长度,接着从第二个元素重复上面的操作,比较找到的数组的长度,直到找到长度最小的数组,然后返回长度。认准[left,right),loop=n/2,因为循环一次,高度减少2,直到等于0,循环了n/2次。:看到这道题目的第一想法是有两种做法:一是将数组中的每个元素平方,得到新的心得数组,然后再重新排序,另一种是先将数组中的元素按绝对值排完序,再进行平方操作。组成的新数组,要求也按。原创 2023-12-01 00:38:16 · 76 阅读 · 1 评论 -
代码随想录算法 - Day1 数组基础
首先想到的,是暴力,但是上手写的时候发现各种问题出现,没有想象中简单。尤其注意边界值,然后看解析的双指针,慢指针留在保留位置,快指针去找要排除的元素。不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并原地修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。该题使用二分法解答。即从中间开始查找,根据结果的大小再向左或者向右查找。,如果目标值存在返回下标,否则返回。原创 2023-11-30 00:32:07 · 73 阅读 · 0 评论