![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
刷题冲冲冲!
牛客、LeetCode、PTA都会刷一刷,并分享自己的思路与体会
青石横刀策马
菜鸟一只
展开
-
104.二叉树的最大深度
给定一个二叉树 root ,返回其最大深度。二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。原创 2024-07-03 16:24:24 · 165 阅读 · 0 评论 -
206.反转链表
给你单链表的头节点head,请你反转链表,并返回反转后的链表。原创 2024-07-02 22:44:31 · 237 阅读 · 0 评论 -
328.奇偶链表
给定单链表的头节点 head ,将所有索引为奇数的节点和索引为偶数的节点分别组合在一起,然后返回重新排序的列表。第一个节点的索引被认为是 奇数 , 第二个节点的索引为 偶数 ,以此类推。请注意,偶数组和奇数组内部的相对顺序应该与输入时保持一致。你必须在 O(1) 的额外空间复杂度和 O(n) 的时间复杂度下解决这个问题。原创 2024-07-01 19:44:00 · 307 阅读 · 0 评论 -
2095.删除链表的中间节点
给你一个链表的头节点head。删除链表的中间节点 ,并返回修改后的链表的头节点head。长度为n链表的中间节点是从头数起第⌊n / 2⌋个节点(下标从 0 开始),其中⌊x⌋表示小于或等于x的最大整数。对于 n = 1、2、3、4 和 5 的情况,中间节点的下标分别是 0、1、1、2 和 2。原创 2024-06-30 18:02:56 · 237 阅读 · 0 评论 -
394.字符串解码
给定一个经过编码的字符串,返回它解码后的字符串。编码规则为:,表示其中方括号内部的正好重复k次。注意k保证为正整数。你可以认为输入字符串总是有效的;输入字符串中没有额外的空格,且输入的方括号总是符合格式要求的。此外,你可以认为原始数据不包含数字,所有的数字只表示重复的次数k,例如不会出现像3a或2[4]的输入。原创 2024-06-29 23:21:41 · 194 阅读 · 0 评论 -
933.最近的请求次数
写一个类来计算特定时间范围内最近的请求。请你实现初始化计数器,请求数为 0。在时间t添加一个新请求,其中t表示以毫秒为单位的某个时间,并返回过去 3000 毫秒内发生的所有请求数(包括新请求)。确切地说,返回在内发生的请求数。保证 每次对ping的调用都使用比之前更大的t值。原创 2024-06-26 15:07:55 · 306 阅读 · 0 评论 -
735.小行星碰撞
给定一个整数数组asteroids,表示在同一行的小行星。对于数组中的每一个元素,其绝对值表示小行星的大小,正负表示小行星的移动方向(正表示向右移动,负表示向左移动)。每一颗小行星以相同的速度移动。找出碰撞后剩下的所有小行星。两个小行星相互碰撞,较小的小行星会爆炸。如果两颗小行星大小相同,则两颗小行星都会爆炸。两颗移动方向相同的小行星,永远不会发生碰撞。原创 2024-06-25 12:16:21 · 257 阅读 · 0 评论 -
2390.从字符串中移除星号
给你一个包含若干星号的字符串s。在一步操作中,你可以:选中s中的一个星号。移除星号左侧最近的那个非星号字符,并移除该星号自身。返回移除 所有 星号之后的字符串。生成的输入保证总是可以执行题面中描述的操作。可以证明结果字符串是唯一的。原创 2024-06-24 13:00:24 · 232 阅读 · 0 评论 -
2352.相等行列对
给你一个下标从 0 开始、大小为n x n的整数矩阵grid,返回满足 Ri 行和 Cj 列相等的行列对 (Ri, Cj) 的数目。如果行和列以相同的顺序包含相同的元素(即相等的数组),则认为二者是相等的。原创 2024-06-21 13:32:41 · 176 阅读 · 0 评论 -
1657.确定两个字符串是否相近
交换任意两个 现有 字符。例如,abcde->aecdb:将一个 现有 字符的每次出现转换为另一个 现有字符,并对另一个字符执行相同的操作。例如,aacabb->bbcbaa(所有 a 转化为 b ,而所有的 b 转换为 a )你可以根据需要对任意一个字符串多次使用这两种操作。给你两个字符串,word1和word2。如果word1和word2接近 ,就返回true;否则,返回false。原创 2024-06-20 12:42:15 · 430 阅读 · 0 评论 -
1207.独一无二的出现次数
给你一个整数数组arr,请你帮忙统计数组中每个数的出现次数。如果每个数的出现次数都是独一无二的,就返回true;否则返回false。原创 2024-06-19 15:23:51 · 224 阅读 · 0 评论 -
2215.找出两数组的不同
给你两个下标从0开始的整数数组nums1和nums2,请你返回一个长度为2的列表answeranswer[0]是nums1中所有不存在于nums2中的不同整数组成的列表。answer[1]是nums2中所有不存在于nums1中的不同整数组成的列表。注意:列表中的整数可以按任意顺序返回。原创 2024-06-19 15:10:43 · 211 阅读 · 0 评论 -
724.寻找数组的中心下标
给你一个整数数组nums,请计算数组的 中心下标。数组中心下标是数组的一个下标,其左侧所有元素相加的和等于右侧所有元素相加的和。如果中心下标位于数组最左端,那么左侧数之和视为 0 ,因为在下标的左侧不存在元素。这一点对于中心下标位于数组最右端同样适用。如果数组有多个中心下标,应该返回 最靠近左边 的那一个。如果数组不存在中心下标,返回-1。原创 2024-06-18 18:18:55 · 211 阅读 · 0 评论 -
1732.找到最高海拔
有一个自行车手打算进行一场公路骑行,这条路线总共由n + 1个不同海拔的点组成。自行车手从海拔为 0 的点 0 开始骑行。给你一个长度为n的整数数组gain,其中gain[i]是点i和点i + 1的 净海拔高度差(0 <= i <n请你返回 最高点的海拔。原创 2024-06-17 12:21:29 · 252 阅读 · 0 评论 -
1493.删掉一个元素以后全为1的最长子数组
给你一个二进制数组nums,你需要从中删掉一个元素。请你在删掉元素的结果数组中,返回最长的且只包含 1 的非空子数组的长度。如果不存在这样的子数组,请返回 0。原创 2024-06-14 13:37:08 · 312 阅读 · 0 评论 -
1004.最大连续1的个数
给定一个二进制数组nums和一个整数k,如果可以翻转最多k个 0 ,则返回 数组中连续 1 的最大个数。原创 2024-06-13 19:30:23 · 277 阅读 · 0 评论 -
1456.定长字串中元音的最大数目
给你字符串s和整数k。请返回字符串s中长度为k的单个子字符串中可能包含的最大元音字母数。英文中的 元音字母 为。原创 2024-06-12 18:00:23 · 409 阅读 · 0 评论 -
643.子数组最大平均数
给你一个由n个元素组成的整数数组nums和一个整数k。请你找出平均数最大且 长度为k的连续子数组,并输出该最大平均数。任何误差小于 10^-5}的答案都将被视为正确答案。原创 2024-06-11 17:48:36 · 149 阅读 · 0 评论 -
1679.K和数对的最大数目
给你一个整数数组nums和一个整数k。每一步操作中,你需要从数组中选出和为k的两个整数,并将它们移出数组。返回你可以对数组执行的最大操作数。原创 2024-06-10 16:47:12 · 156 阅读 · 0 评论 -
11.盛水最多的容器
给定一个长度为n的整数数组height。有n条垂线,第i条线的两个端点是(i, 0)和。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。返回容器可以储存的最大水量。说明:你不能倾斜容器。原创 2024-06-07 11:52:03 · 334 阅读 · 0 评论 -
392.判断子序列
给定字符串s和t,判断s是否为t的子序列。字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如,"ace"是"abcde"的一个子序列,而"aec"不是)。原创 2024-06-06 11:40:05 · 228 阅读 · 0 评论 -
283.移动零
给定一个数组nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。请注意 ,必须在不复制数组的情况下原地对数组进行操作。原创 2024-06-05 18:46:08 · 225 阅读 · 0 评论 -
334.递增的三元子序列
给你一个整数数组nums,判断这个数组中是否存在长度为 3 的递增子序列。如果存在这样的三元组下标(i, j, k)且满足i < j < k,使得,返回 true;否则,返回 false。原创 2024-06-04 15:56:03 · 244 阅读 · 0 评论 -
238.除以自身以外数组的乘积
给你一个整数数组nums,返回数组answer,其中answer[i]等于nums中除nums[i]之外其余各元素的乘积。题目数据保证数组nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。原创 2024-06-03 18:37:25 · 326 阅读 · 0 评论 -
151.反转字符串中的单词
给你一个字符串s,请你反转字符串中单词的顺序。单词 是由非空格字符组成的字符串。s中使用至少一个空格将字符串中的单词分隔开。返回单词顺序颠倒且单词之间用单个空格连接的结果字符串。注意:输入字符串s中可能会存在前导空格、尾随空格或者单词间的多个空格。返回的结果字符串中,单词间应当仅用单个空格分隔,且不包含任何额外的空格。原创 2024-05-31 23:10:05 · 327 阅读 · 0 评论 -
345.反转字母串中的元音字母
给你一个字符串 s ,仅反转字符串中的所有元音字母,并返回结果字符串。元音字母包括 ‘a’、‘e’、‘i’、‘o’、‘u’,且可能以大小写两种形式出现不止一次。原创 2024-05-30 11:03:47 · 205 阅读 · 0 评论 -
605.种花问题
假设有一个很长的花坛,一部分地块种植了花,另一部分却没有。可是,花不能种植在相邻的地块上,它们会争夺水源,两者都会死去。给你一个整数数组flowerbed表示花坛,由若干 0 和 1 组成,其中 0 表示没种植花,1 表示种植了花。另有一个数n,能否在不打破种植规则的情况下种入n朵花?能则返回true,不能则返回false。原创 2024-05-29 17:28:29 · 301 阅读 · 0 评论 -
1431.拥有最多糖果的孩子
给你一个数组candies和一个整数,其中candies[i]代表第i个孩子拥有的糖果数目。对每一个孩子,检查是否存在一种方案,将额外的个糖果分配给孩子们之后,此孩子有最多的糖果。注意,允许有多个孩子同时拥有 最多 的糖果数目。原创 2024-05-28 16:47:40 · 256 阅读 · 0 评论 -
1071.字符串的最大公因子
对于字符串s和t,只有在t自身连接1次或多次)时,我们才认定 “t能除尽s给定两个字符串str1和str2。返回最长字符串x,要求满足x能除尽str1且x能除尽str2。原创 2024-05-27 15:49:32 · 218 阅读 · 0 评论 -
1673.找出最有竞争力的子序列(贪心 + 栈)
给你一个整数数组nums和一个正整数k,返回长度为k且最具 竞争力 的nums子序列。数组的子序列是从数组中删除一些元素(可能不删除元素)得到的序列。在子序列 a 和子序列 b 第一个不相同的位置上,如果 a 中的数字小于 b 中对应的数字,那么我们称子序列 a 比子序列 b(相同长度下)更具 竞争力。[1,3,4]比[1,3,5]更具竞争力,在第一个不相同的位置,也就是最后一个位置上, 4小于5。原创 2024-05-24 17:21:03 · 174 阅读 · 0 评论 -
2831.找出最长等值子数组(哈希表+滑动窗口法)
给你一个下标从 0 开始的整数数组nums和一个整数k。如果子数组中所有元素都相等,则认为子数组是一个 等值子数组。注意,空数组是 等值子数组。从nums中删除最多k个元素后,返回可能的最长等值子数组的长度。原创 2024-05-23 16:51:44 · 497 阅读 · 0 评论 -
222.5 找出输掉零场或一场比赛的玩家(哈希表)
给你一个整数数组 matches 其中 matches[i] = [winneri, loseri] 表示在一场比赛中 winneri击败了 loseri。返回一个长度为 2 的列表 answer :answer[0] 是所有 没有 输掉任何比赛的玩家列表。answer[1] 是所有恰好输掉 一场 比赛的玩家列表。两个列表中的值都应该按 递增 顺序返回。注意:只考虑那些参与 至少一场 比赛的玩家。生成的测试用例保证 不存在 两场比赛结果 相同。原创 2024-05-22 15:40:00 · 311 阅读 · 0 评论 -
2769.找出最大的可达成数字
每次操作将 x 的值增加或减少 1 ,同时可以选择将 num 的值增加或减少 1。返回所有可达成数字中的最大值。可以证明至少存在一个可达成数字。输入:num = 3, t = 2。给你两个整数 num 和 t。一眼 num+2t,秒了。原创 2024-05-21 21:19:07 · 113 阅读 · 0 评论 -
1768.交替合并字符串
给你两个字符串 word1 和 word2。请你从 word1开始,通过交替添加字母来合并字符串。如果一个字符串比另一个字符串长,就将多出来的字母追加到合并后字符串的末尾。返回。输入:word1 = “abc”, word2 = “pqr”输出:“apbqcr”解释:字符串合并情况如下所示:合并后: a p b q c r输入:word1 = “ab”, word2 = “pqrs”输出:“apbqrs”原创 2024-05-18 19:06:48 · 191 阅读 · 0 评论 -
L1-078 吉老师的回归 (15 分)
曾经在天梯赛大杀四方的吉老师决定回归天梯赛赛场啦!为了简化题目,我们不妨假设天梯赛的每道题目可以用一个不超过 500 的、只包括可打印符号的字符串描述出来,如:Problem A: Print "Hello world!"。众所周知,吉老师的竞赛水平非常高超,你可以认为他每道题目都会做(事实上也是……)。因此,吉老师会按照顺序看题并做题。但吉老师水平太高了,所以签到题他就懒得做了(浪费时间),具体来说,假如题目的字符串里有 qiandao 或者 easy(区分大小写)的话,吉老师看完题目就会跳过这道题目原创 2022-01-18 22:31:39 · 208 阅读 · 0 评论 -
L1-077 大笨钟的心情 (15 分)
有网友问:未来还会有更多大笨钟题吗?笨钟回复说:看心情……本题就请你替大笨钟写一个程序,根据心情自动输出回答。输入格式:输入在一行中给出 24 个 [0, 100] 区间内的整数,依次代表大笨钟在一天 24 小时中,每个小时的心情指数。随后若干行,每行给出一个 [0, 23] 之间的整数,代表网友询问笨钟这个问题的时间点。当出现非法的时间点时,表示输入结束,这个非法输入不要处理。题目保证至少有 1 次询问。输出格式:对每一次提问,如果当时笨钟的心情指数大于 50,就在一行中输出 心情指数 Ye.原创 2022-01-17 00:30:00 · 138 阅读 · 0 评论 -
L1-076 降价提醒机器人 (10 分)
小 T 想买一个玩具很久了,但价格有些高,他打算等便宜些再买。但天天盯着购物网站很麻烦,请你帮小 T 写一个降价提醒机器人,当玩具的当前价格比他设定的价格便宜时发出提醒。输入格式:输入第一行是两个正整数 N 和 M (1≤N≤100,0≤M≤1000),表示有 N 条价格记录,小 T 设置的价格为 M。接下来 N 行,每行有一个实数 Pi(−1000.0<Pi<1000.0)P_{i}(-1000.0<P_{i}<1000.0)Pi(−1000.0<Pi<100原创 2022-01-16 20:18:10 · 113 阅读 · 0 评论 -
L1-075 强迫症 (10 分)
强在统计一个小区里居民的出生年月,但是发现大家填写的生日格式不统一,例如有的人写 199808,有的人只写 9808。有强迫症的小强请你写个程序,把所有人的出生年月都整理成 年年年年-月月 格式。对于那些只写了年份后两位的信息,我们默认小于 22 都是 20 开头的,其他都是 19 开头的。输入格式:输入在一行中给出一个出生年月,为一个 6 位或者 4 位数,题目保证是 1000 年 1 月到 2021 年 12 月之间的合法年月。输出格式:在一行中按标准格式 年年年年-月月 将输入的信息整理输出。原创 2022-01-16 20:12:42 · 606 阅读 · 0 评论 -
L1-074 两小时学完C语言 (5 分)
知乎上有个宝宝问:“两个小时内如何学完 C 语言?”当然,问的是“学完”并不是“学会”。假设一本 C 语言教科书有 N 个字,这个宝宝每分钟能看 K 个字,看了 M 分钟。还剩多少字没有看?输入格式:输入在一行中给出 3 个正整数,分别是 N(不超过 400 000),教科书的总字数;K(不超过 3 000),是宝宝每分钟能看的字数;M(不超过 120),是宝宝看书的分钟数。题目保证宝宝看完的字数不超过 N。输出格式:在一行中输出宝宝还没有看的字数。输入样例:100000 1000 72原创 2022-01-15 00:30:00 · 1009 阅读 · 0 评论 -
L1-073 人与神 (5 分)
跨界大神 L. Peter Deutsch 有一句名言:“To iterate is human, to recurse divine.”(迭代的是人,递归的是神)。本题就请你直接在屏幕上输出这句话。输入格式:本题没有输入。输出格式:在一行中输出 To iterate is human, to recurse divine.。输入样例:无输出样例:To iterate is human, to recurse divine.解题思路:略代码:#include <iostre原创 2022-01-15 00:15:00 · 354 阅读 · 0 评论