代码随想录
文章平均质量分 95
小了白了兔白了又了
这个作者很懒,什么都没留下…
展开
-
day08-字符串|反转字符串
给定一个字符串 s 和一个正整数 k,请编写一个函数,将字符串中的后面 k 个字符移到字符串的前面,实现字符串的右旋转操作。给定一个字符串 s,它包含小写字母和数字字符,请编写一个函数,将字符串中的字母字符保持不变,而将每个数字字符替换为number。我们将整个字符串都反转过来,那么单词的顺序指定是倒序了,只不过单词本身也倒序了,那么再把单词反转一下,单词不就正过来了。申请一个新的字符串,遇到多余的空格就跳过,把其余的字符放到新的字符串里面,这样就实现了移除多余的空格这种操作;原创 2024-01-29 11:53:09 · 1102 阅读 · 0 评论 -
day-07哈希表|15. 三数之和、18. 四数之和
给你一个整数数组 nums ,判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i!如果nums[i] + nums[left] + nums[right] > 0 就说明 此时三数之和大了,因为数组是从小到大排序了的,所以right下标就应该向左移动,这样才能让三数之和小一些。排序+枚举+双指针,先对数组排序,然后枚举nums[a]和nums[b],双指针求nums[c]和nums[d]。输出:[[-2,-1,1,2],[-2,0,0,2],[-1,0,0,1]]原创 2024-01-20 17:56:58 · 825 阅读 · 0 评论 -
day06-哈希表|242.有效的字母异位词、349. 两个数组的交集、202. 快乐数、1. 两数之和
哈希表(英文名字为Hash table),哈希表是根据关键码的值而直接进行访问的数据结构。总结一下,当我们遇到了要快速判断一个元素是否出现集合里的时候,就要考虑哈希法。但是哈希法也是牺牲了空间换取了时间,因为我们要使用额外的数组,set或者是map来存放数据,才能实现快速的查找。如果在做面试题目的时候遇到需要判断一个元素是否出现过的场景也应该第一时间想到哈希法!原创 2024-01-19 16:51:06 · 919 阅读 · 1 评论 -
代码随想录day1数组| 二分查找、双指针
链接34.在排序数组中查找元素的第一个和最后一个位置给你一个按照非递减顺序排列的整数数组 nums,和一个目标值 target。请你找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值 target,返回 [-1, -1]。你必须设计并实现时间复杂度为 O(log n) 的算法解决此问题。输入:nums = [5,7,7,8,8,10], target = 8输出:[3,4]输入:nums = [5,7,7,8,8,10], target = 6输出:[-1,-1]方法。原创 2024-01-04 14:35:04 · 825 阅读 · 0 评论