自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 反转字符串Ⅱ/C++

给定一个字符串 s 和一个整数 k,从字符串开头算起, 每计数至 2k 个字符,就反转这 2k 个字符中的前 k 个字符。如果剩余字符小于 2k 但大于或等于 k 个,则反转前 k 个字符,其余字符保持原样。输入: s = “asdfghjk”, k = 3。如果剩余字符少于 k 个,则将剩余字符全部反转。输出: “dsafghkj”

2023-03-23 14:00:09 52

原创 四数之和/C++

唯一变的就是在i外面加了一层for循环k,然后剪枝操作稍微变了一下,因为三数相加只需要目标值大于0即可,所以num[i]>0即可剪枝,但是target的值不一定都是整数,也可能是负数,所以按照三数之和的思路num[k]>target即可剪枝的思想是错误的,例如 -2 -1 -1 1,target=-3,虽然-2>-3,但是这里是不可以剪枝的,-2 -1 -1 1也是满足要求的元组。其他的思路和三数之和的思路就是一模一样的了。与三数之和的思路类似,没看过三数之和的朋友可以先看看。

2023-03-22 20:35:22 55

原创 三数之和/C++

接下来如何移动left 和right呢,如果nums[i] + nums[left] + nums[right] > 0 就说明此时三数之和大了,因为数组是排序后了,所以right下标就应该向左移动,这样才能让三数之和小一些。拿数组nums = [-1, 0, 1, 2, -1, -4]来举例,首先将数组排序,然后有一层for循环,i从下标0的地方开始,同时定一个下标left 定义在i+1的位置上,定义下标right 在数组结尾的位置上。给定数组 nums = [-1, 0, 1, 2, -1, -4],

2023-03-22 16:46:45 76

原创 四数相加II/C++

给定四个包含整数的数组列表 A , B , C , D ,计算有多少个元组 (i, j, k, l) ,使得 A[i] + B[j] + C[k] + D[l] = 0。

2023-03-21 16:44:09 37

原创 两数相加/C++

此题可以用两层for循环暴力求解,但是O(n^2)的时间复杂度太大,我们可以使用哈希表来求解。我们不仅要知道元素有没有遍历过,还有知道这个元素对应的下标,需要使用 key value结构来存放,key来存元素,value来存下标,那么使用map正合适。给定 nums = [2, 7, 11, 15], target = 9。因为 nums[0] + nums[1] = 2 + 7 = 9。所以返回 [0, 1]

2023-03-20 16:59:16 57

原创 两个数组的交集/C++

当我们要使用集合来解决哈希问题的时候,优先使用unordered_set,因为它的查询和增删效率是最优的,如果需要集合是有序的,那么就用set,如果要求不仅有序还要有重复数据的话,那么就用multiset。给定两个数组,写出两个数组的交集。如果哈希值比较少、特别分散、跨度非常大,使用数组就会造成空间的极大浪费,所以使用unordered_set是一种不错的选择。

2023-03-19 18:29:10 138

原创 螺旋矩阵Ⅱ

此题的关键点是在4个顶点上,4个顶点容易边界混乱,为了保证4条边的处理方式一样,4个for循环通一是一个顶点一条边。输入:3输出: [ [ 1, 2, 3 ], [ 8, 9, 4 ], [ 7, 6, 5 ] ]给定一个正整数 n,生成一个包含1到 n^2所有元素,且元素按顺时针顺序螺旋排列的正方形矩阵。

2023-03-18 21:04:36 77

原创 长度最小的子数组/C++

输入:s = 7, nums = [2,3,1,2,4,3] 输出:2 解释:子数组 [4,3] 是该条件下的长度最小的子数组。给定一个含有 n 个正整数的数组和一个正整数 s ,找出该数组中满足其和 ≥ s 的长度最小的连续子数组,并返回其长度。

2023-03-18 18:59:03 83

原创 【二分法查找/c++】

在一个有序数组中查找目标值,查找成功返回下标,查找失败返回-1;

2023-03-16 12:31:06 54 1

空空如也

空空如也

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

TA关注的人

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