- 博客(7)
- 资源 (1)
- 收藏
- 关注
原创 代码随想录算法营第八天(48期)| LeetCode 344.反转字符串 541. 反转字符串II 卡码网:54.替换数字
给定一个字符串 s,它包含小写字母和数字字符,请编写一个函数,将字符串中的字母字符保持不变,而将每个数字字符替换为number。给定一个字符串 s 和一个整数 k,从字符串开头算起,每计数至 2k 个字符,就反转这 2k 字符中的前 k 个字符。输入字符串以字符数组 s 的形式给出。输入:s = [“H”,“a”,“n”,“n”,“a”,“h”]输入:s = [“h”,“e”,“l”,“l”,“o”]输出:[“h”,“a”,“n”,“n”,“a”,“H”]输出:[“o”,“l”,“l”,“e”,“h”]
2024-10-23 23:09:39 478
原创 代码随想录算法营第七天(48期)| LeetCode 454.四数相加II 383. 赎金信 15. 三数之和 18. 四数之和
给你一个整数数组 nums ,判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i!输入:nums1 = [1,2], nums2 = [-2,-1], nums3 = [-1,2], nums4 = [0,2]输入:nums1 = [0], nums2 = [0], nums3 = [0], nums4 = [0]输出:[[-2,-1,1,2],[-2,0,0,2],[-1,0,0,1]]输入:nums = [1,0,-1,0,-2,2], target = 0。
2024-10-23 22:25:53 805
原创 代码随想录算法营第六天(48期)| LeetCode 242.有效的字母异位词 349. 两个数组的交集 202. 快乐数 1. 两数之和
总结一下,当我们遇到了要快速判断一个元素是否出现集合里的时候,就要考虑哈希法。但是哈希法也是牺牲了空间换取了时间,因为我们要使用额外的数组,set或者是map来存放数据,才能实现快速的查找。如果在做面试题目的时候遇到需要判断一个元素是否出现过的场景也应该第一时间想到哈希法!
2024-10-21 22:25:13 548
原创 代码随想录算法营第四天(48期)| LeetCode 24. 两两交换链表中的节点 19.删除链表的倒数第N个节点 面试题 02.07. 相交链表 142.环形链表II
这个方法很巧妙,定义fast和slow双指针分别开始指向虚拟头结点,让fast先走n步,在让slow和fast同时走,知道fast走到nullptr的位置,那么slow就是需要删除的结点的位置。换句话说,它们在内存中指向两个不同的位置,而链表 A 和链表 B 中值为 8 的节点 (A 中第三个节点,B 中第四个节点) 在内存中指向相同的位置。构建一个链表类型的栈,利用栈先进后出的性质,将所有结点装入后,根据n的大小进行pop(),最后完成操作。PS:我还没学到栈,这里是看了官方的题解,照葫芦画瓢一下。
2024-10-19 22:28:29 566
原创 代码随想录算法营第三天(48期)| LeetCode 203. 移除链表元素 707.设计链表 206.反转链表
这里使用的方法是定义一个虚拟的结点其next为head结点,这样保证了所有的删除操作都为一致的,若没有这个虚拟结点,那么当head结点的val值整好为目标的val值,需要对head结点单独操作。什么是链表,链表是一种通过指针串联在一起的线性结构,每一个节点由两部分组成,一个是数据域一个是指针域(存放指向下一个节点的指针),最后一个节点的指针域指向null(空指针的意思)。综合链表题,设计到链表的创捷,在头,尾,指定位置添加结点,删除指定位置的结点等操作,非常适合新手来锻炼理解链表。明儿继续,效率太慢了!
2024-10-18 22:58:43 1031
原创 代码随想录算法营第二天(48期)| LeetCode 209 长度最小的子数组 59.螺旋矩阵II KamaCoder: 58.区间和(前缀和方法)44. 开发商购买土地
其实暴力的解法很容易想到,维护两个变量start,end分别指向子数组的首尾两个位置,一旦子数组满足条件,记录end - start + 1为当前答案,如果后续循环中,遇到更小的子数组,则更新最终答案,一直到start和end都到了末尾停止,若答案未被赋值,证明没有找到符合的数组,则返回0,否则范围当前记录的最小子数组的长度。测试用例都能通过,但是最后提交会超时,看了大佬们的解释,硕士LeetCode后台的数据更新了,所以这个题的暴力解法会超时,该解法时间复杂度为。
2024-10-17 20:33:19 908
原创 代码随想录算法营第一天(48期)| LeetCode 704.二分查找 27. 移除元素 977. 有序数组的平方
给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。的元素或者第一个满足条件的元素,都是一样的,根据是否满足题目的条件来缩小答案所在的区间,这个就是二分的本质。nums 的其余元素和 nums 的大小并不重要。解释:你的函数应该返回 k = 5,并且 nums 中的前五个元素为 0,0,1,3,4。输入:nums = [0,1,2,2,3,0,4,2], val = 2。
2024-10-16 19:51:12 932 1
Student Information System.cpp
2019-12-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人