
leetcode刷题打卡
文章平均质量分 93
hndgfnd
这个作者很懒,什么都没留下…
展开
-
刷题15 滑动窗口
给你一个整数数组nums和一个整数k,请你返回子数组内所有元素的乘积严格小于k的连续子数组的数目。88 个乘积小于 100 的子数组分别为:[10]、[5]、[2],、[6]、[10,5]、[5,2]、[2,6]、[5,2,6]。需要注意的是 [10,5,2] 并不是乘积小于 100 的子数组。滑动窗口给定一个字符串s,请你找出其中不含有重复字符的的长度。3因为无重复字符的最长子串是 "abc",所以其长度为 3。滑动窗口+哈希表。原创 2024-02-25 16:39:44 · 1044 阅读 · 0 评论 -
刷题14 动态规划
数组的每个下标作为一个阶梯,第i个阶梯对应着一个非负数的体力花费值cost[i](下标从0开始)。每当爬上一个阶梯都要花费对应的体力值,一旦支付了相应的体力值,就可以选择向上爬一个阶梯或者爬两个阶梯。请找出达到楼层顶部的最低花费。在开始时,你可以选择从下标为 0 或 1 的元素作为初始阶梯。15最低花费是从 cost[1] 开始,然后走两步即可到阶梯顶,一共花费 15。某公司每日销售额记于整数数组sales,请返回所有一或多天销售额总和的最大值。要求实现时间复杂度为O(n)的算法。6。原创 2024-02-25 16:40:16 · 340 阅读 · 0 评论 -
刷题13 数组
整数的num是按照从左到右的顺序表示其数字的数组。例如,对于num = 1321,数组形式是[1,3,2,1]。给定num,整数的,和整数k,返回整数num + k的。[1,2,3,4]原创 2024-02-09 11:06:05 · 1083 阅读 · 0 评论 -
刷题12 排序
给你一个非空数组,返回此数组中。如果不存在,则返回数组中最大的数。[3, 2, 1]1第三大的数是 1。原创 2024-02-03 23:15:07 · 920 阅读 · 0 评论 -
刷题11 双指针
给定一个含有n个正整数的数组和一个正整数target找出该数组中满足其总和大于等于target的长度最小的,并返回其长度如果不存在符合条件的子数组,返回0。2子数组 [4,3]1。原创 2024-02-03 16:02:09 · 957 阅读 · 0 评论 -
刷题10
给你一个长度为n的字符串moves,该字符串仅由字符'L''R'和'_'组成。字符串表示你在一条原点为0的数轴上的若干次移动。移动n次之后,请你找出可以到达的距离原点的点,并返回。3可以到达的距离原点 0 最远的点是 -3 ,移动的序列为 "LLRLLLR"。给你长度相等的两个字符串s1和s2。一次操作的步骤如下:选出某个字符串中的两个下标(不必不同),并交换这两个下标所对应的字符。如果对执行就可以使两个字符串相等,返回true;否则,返回false。true。原创 2024-01-29 12:54:44 · 891 阅读 · 0 评论 -
刷题09 双指针
给你两个整数数组nums1和nums2,它们已经按非降序排序,请你返回两个数组的。如果两个数组nums1和nums2没有公共整数,请你返回-1。如果一个整数在两个数组中都,那么这个整数是数组nums1和nums2的。2两个数组的最小公共元素是 2 ,所以我们返回 2。暴力循环会超时,用两个指针进行寻找下标。给你一个下标从开始的整数数组nums。现定义两个数字的是由这两个数值串联起来形成的新数字。例如,15和49的串联是1549。nums的最初等于0。执行下述操作直到nums变为空:如果nums。原创 2024-01-28 11:15:57 · 1342 阅读 · 0 评论 -
刷题08 位运算easy
给你两个二进制字符串a和b,以二进制字符串的形式返回它们的和。"100""10101"给你一个整数n,请你判断该整数是否是 2 的幂次方。如果是,返回true;否则,返回false。如果存在一个整数x使得n == 2x,则认为n是 2 的幂次方。n = 16true24 = 16注意负数的情况,如果幂是偶数次方就返回false。注意循环的终止条件是n>1,若是n>0的话,最后都会返回false给定一个包含[0, n]中n个数的数组nums,找出[0, n]这个范围内没有出现在数组中的那个数。2。原创 2024-01-27 12:03:12 · 967 阅读 · 0 评论 -
刷题07 字符串easy
给你一个二进制字符串s。如果字符串中由1组成的连续子字符串由0组成的连续子字符串,返回true;否则,返回false。1203注意,如果字符串中不存在0,此时认为由0组成的最长连续子字符串的长度是0。字符串中不存在1的情况也适用此规则。原创 2024-01-25 13:29:44 · 1480 阅读 · 0 评论 -
刷题06 数组mid
给你一个非负整数数组nums和一个整数target。向数组中的每个整数前添加'+'或'-',然后串联起所有整数,可以构造一个例如,,可以在2之前添加'+',在1之前添加'-',然后串联起来得到表达式"+2-1"。返回可以通过上述方法构造的、运算结果等于target的不同的数目。5此题涉及回溯,函数参数需要包含数组下标,当前的数组之和。原创 2024-01-26 11:57:23 · 754 阅读 · 0 评论 -
刷题05数组mid
例如,在数组{5, 8, 4, 2, 3, 4, 6}中,{8, 6}是峰, {5, 2}是谷。动态规划: dp[i][j] 表示从数组的 [0,i] 下标范围内选取若干个正整数(可以是 0个),是否存在一种选取方案使得被选取的正整数的和等于 j。另一种优化写法:用滚动数组进行表示,dp[i]表示子序列能够到达的大于等于target的和,当dp[target]==target时,说明存在子序列之和正好为taget。如果选取 nums[i],则 dp[i][j]=dp[i−1][j−nums[i]]原创 2024-02-01 20:33:17 · 852 阅读 · 0 评论 -
刷题04 字符串mid
记录一些和字符数组有关的题目之前代码随想录day08里面有一些涉及翻转字符串的操作可以一起回顾。原创 2024-01-15 23:50:13 · 957 阅读 · 0 评论 -
刷题03 数组mid
使用哈希表,找出两个字符串数组中只出现过一次的公共字符串。map中记录者字符串以及字符串出席的频次。然后在数组查找,字符串相等且频次均为1的字符串即可。原创 2024-01-11 16:42:39 · 941 阅读 · 1 评论 -
刷题02 数组easy
如果整个数组非递减,返回true,如果只有两个子数列非递减,并且两个子序列之间是有序的,返回true。先找到第一个不满足非递减的位置i,如果i==numsize,说明整个数组非递减。否则,就判断另一个子数组是否是非递减的,若不是,返回false,若是,则判断两个子数组之间是否有序,只需要判断nums[0]与nums[numsize-1]的大小。nums[0]是第一个子数组的最小值,nums[numsize-1]是第二个子数组的最大值。原创 2024-01-08 23:16:02 · 919 阅读 · 1 评论 -
刷题01 数组easy
这里刷题的顺序是随机的,按标题进行筛选 ,比如今天刷的是数组有关的easy题。原创 2024-01-05 21:19:49 · 810 阅读 · 1 评论