- 博客(7)
- 收藏
- 关注
原创 代码随想录Day08 | ● 344.反转字符串● 541. 反转字符串II● 卡码网:54.替换数字● 151.翻转字符串里的单词● 卡码网:55.右旋转字符串
编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组s的形式给出。不要给另外的数组分配额外的空间,你必须、使用 O(1) 的额外空间解决这一问题。
2024-03-19 22:44:42
646
1
原创 代码随想录Day07| LeetCode● 454.四数相加II ● 383. 赎金信 ● 15. 三数之和 ● 18. 四数之和
给你四个整数数组nums1nums2nums3和nums4,数组长度都是n,请你计算有多少个元组2两个元组如下:1首先,这个题的暴力解法是4个for,但是估计只能过很少的一部分样例。我们可以考虑用哈希表,为什么考虑用哈希表呢,和两数之和一样的道理,可以去看之前的Day06的文章,这里不再赘述。这个题我们不用考虑去重,因为只要是数组的不同位置加起来,值一样也没关系的。所以我们哈希表采用unordered_map,增删效率和查询效率比较高。
2024-03-05 11:31:51
847
1
原创 代码随想录Day06| LeetCode 242.有效的字母异位词 、 349. 两个数组的交集 、 202. 快乐数、1. 两数之和
给定两个字符串s和t,编写一个函数来判断t是否是s的字母异位词。若s和t中每个字符出现的次数都相同,则称s和t互为字母异位词。
2024-02-29 01:47:19
1179
2
原创 代码随想录Day04|24. 两两交换链表中的节点、19.删除链表的倒数第N个节点、面试题 02.07. 链表相交、142.环形链表II
给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。
2024-02-27 01:20:08
792
原创 代码随想录Day03| 203. 移除链表元素、707. 设计链表、206. 反转链表
这个题属于基本的操作链表的题,比较简单,要知道移除某个元素需要定位这个元素的前一个,这个和数组要区分开。首先,我们需要一个虚拟的头节点,将它放在原来头节点的前面( 也就是将虚拟指针的指针域指向原来头节点 ),这样的话移除头节点和其他节点就不用两种处理的逻辑了,为什么循环的判断条件是 p->next!= nullptr 而不是 p!=nullptr 呢,因为我们只需定位到需要删除节点的前一个节点就可以了。
2024-02-26 11:14:23
912
1
原创 代码随想录Day02|LeetCode 977有序数组的平方||209 长度最小的子数组||59 螺旋矩阵 II
这取决于平方后最大数是在前面还是在后面,按上面的步骤依次进行,得到的新数组就是符合条件的了。
2024-02-23 17:50:32
1703
原创 代码随想录Day01|LeetCode707.二分查找、LeetCode27.移除元素
首先,我们要知道数组的元素在内存地址中是连续的,不能单独删除数组中的某个元素,只能覆盖,所以由此衍生出的暴力解法就很容易想到了,也就是直接套两个for,外层循环负责遍历数组,内层循环负责将值为 val 后的所有元素依次前移。没什么好说的,就是套两层for,需要注意的点就是在找到指定元素使其之后的元素依次前移的时候不要忘记 i-- ,因为其之后的元素都前移了一位,所以 i 也前移一位。取决于你使用的区间,在左闭右闭区间中,左区间和右区间相等是符合条件的,所以使用的是
2024-02-22 01:32:40
1518
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人