![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
代码题目
文章平均质量分 59
倏然希然_
CS
展开
-
【数据结构】单调栈 + LeetCode 496. 下一个更大元素 I
今天刷Leetcode每日一题496. 下一个更大元素 I看题解才接触到这个概念,学习一下。参考文章:特殊数据结构:单调栈https://www.cnblogs.com/RioTian/p/13462825.html单调栈即栈内元素是有序的,细分为2种:单调递减栈:从栈底到栈顶的元素单调递减单调递增栈:从栈底到栈顶的元素单调递增主要用于解决Next Greater Element问题:给你一个数组,返回一个等长的数组,对应索引存储着下一个更大元素,如果没有更大的元素,就存 ..原创 2021-10-26 17:53:50 · 228 阅读 · 2 评论 -
LeetCode 368. 最大整除子集
tips:子集不一定是连续地原创 2021-04-23 15:15:55 · 146 阅读 · 0 评论 -
LeetCode 179. 最大数
题目给定一组非负整数nums,重新排列每个数的顺序(每个数不可拆分)使之组成一个最大的整数。注意:输出结果可能非常大,所以你需要返回一个字符串而不是整数。示例 1:输入:nums = [10,2]输出:"210"示例2:输入:nums = [3,30,34,5,9]输出:"9534330"示例 3:输入:nums = [1]输出:"1"示例 4:输入:nums = [10]输出:"10"提示:1 <= nums.length &l..原创 2021-04-12 23:11:09 · 132 阅读 · 0 评论 -
LeetCode 264. 丑数 II
题目给你一个整数n,请你找出并返回第n个丑数。丑数就是只包含质因数2、3和/或5的正整数。示例 1:输入:n = 10输出:12解释:[1, 2, 3, 4, 5, 6, 8, 9, 10, 12] 是由前 10 个丑数组成的序列。示例 2:输入:n = 1输出:1解释:1 通常被视为丑数。提示:1 <= n <= 1690来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/u...原创 2021-04-11 19:24:37 · 150 阅读 · 0 评论 -
LeetCode 263. 丑数
题目给你一个整数 n ,请你判断 n 是否为 丑数 。如果是,返回 true ;否则,返回 false 。丑数 就是只包含质因数2、3 和/或5的正整数。示例 1:输入:n = 6输出:true解释:6 = 2 × 3示例 2:输入:n = 8输出:true解释:8 = 2 × 2 × 2示例 3:输入:n = 14输出:false解释:14 不是丑数,因为它包含了另外一个质因数7 。示例 4:输入:n = 1输出:true解释:1 通...原创 2021-04-11 16:47:07 · 125 阅读 · 0 评论 -
LeetCode 154. 寻找旋转排序数组中的最小值
题目已知一个长度为 n 的数组,预先按照升序排列,经由 1 到 n 次 旋转 后,得到输入数组。例如,原数组 nums = [0,1,4,4,5,6,7] 在变化后可能得到:若旋转4次,则可以得到[4,5,6,7,0,1,4] 若旋转7次,则可以得到[0,1,4,4,5,6,7]注意,数组 [a[0], a[1], a[2], ..., a[n-1]] 旋转一次 的结果为数组 [a[n-1], a[0], a[1], a[2], ..., a[n-2]] 。给你一个可能存在...原创 2021-04-09 15:08:37 · 101 阅读 · 0 评论 -
LeetCode 153. 寻找旋转排序数组中的最小值
题目已知一个长度为 n 的数组,预先按照升序排列,经由 1 到 n 次 旋转 后,得到输入数组。例如,原数组 nums = [0,1,2,4,5,6,7] 在变化后可能得到:若旋转4次,则可以得到[4,5,6,7,0,1,2] 若旋转7次,则可以得到[0,1,2,4,5,6,7]注意,数组 [a[0], a[1], a[2], ..., a[n-1]] 旋转一次 的结果为数组 [a[n-1], a[0], a[1], a[2], ..., a[n-2]] 。给你一个元素值互不相...原创 2021-04-08 18:17:24 · 111 阅读 · 0 评论 -
LeetCode 81. 搜索旋转排序数组 II
题目已知存在一个按非降序排列的整数数组 nums ,数组中的值不必互不相同。在传递给函数之前,nums 在预先未知的某个下标 k(0 <= k < nums.length)上进行了 旋转 ,使数组变为 [nums[k], nums[k+1], ..., nums[n-1], nums[0], nums[1], ..., nums[k-1]](下标 从 0 开始 计数)。例如, [0,1,2,4,4,4,5,6,6,7] 在下标 5 处经旋转后可能变为 [4,5,6,6,7,0,1,2,4原创 2021-04-07 22:15:14 · 91 阅读 · 0 评论 -
LeetCode 28. 实现 strStr()
题目实现strStr()函数。给定一个haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在,则返回-1。示例 1:输入: haystack = "hello", needle = "ll"输出: 2示例 2:输入: haystack = "aaaaa", needle = "bba"输出: -1说明:当needle是空字符串时,我们应当返回什么值呢?这是一...原创 2021-03-30 23:57:17 · 104 阅读 · 0 评论 -
LeetCode 74. 搜索二维矩阵
题目编写一个高效的算法来判断m x n矩阵中,是否存在一个目标值。该矩阵具有如下特性:每行中的整数从左到右按升序排列。 每行的第一个整数大于前一行的最后一个整数。示例 1:输入:matrix = [[1,3,5,7],[10,11,16,20],[23,30,34,60]], target = 3输出:true示例 2:输入:matrix = [[1,3,5,7],[10,11,16,20],[23,30,34,60]], target = 13输出:false..原创 2021-03-30 11:33:45 · 103 阅读 · 0 评论 -
LeetCode 83. 删除排序链表中的重复元素
题目存在一个按升序排列的链表,给你这个链表的头节点head,请你删除所有重复的元素,使每个元素只出现一次。返回同样按升序排列的结果链表。示例 1:输入:head = [1,1,2]输出:[1,2]示例 2:输入:head = [1,1,2,3,3]输出:[1,2,3]提示:链表中节点数目在范围[0, 300]内 -100 <= Node.val <= 100 题目数据保证链表已经按升序排列来源:力扣(LeetCode)链接:ht...原创 2021-03-26 15:24:27 · 115 阅读 · 0 评论 -
LeetCode 27. 移除元素
题目给你一个数组 nums和一个值 val,你需要 原地 移除所有数值等于val的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。示例 1:输入:nums = [3,2,2,3], val = 3输出:2, nums = [2,2]解释:函数应该返回新的长度 2, 并且 nums 中的前两个元素均为 2。你不需要考虑数组中超出新长度后面的元素。例如,函数返...原创 2021-03-26 14:30:51 · 90 阅读 · 0 评论 -
LeetCode 26. 删除有序数组中的重复项
题目给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。示例 1:输入:nums = [1,1,2]输出:2, nums = [1,2]解释:函数应该返回新的长度 2 ,并且原数组 nums 的前两个元素被修改为 1, 2 。不需要考虑数组中超出新长度后面的元素。示例 2:输入:nums = [0,0,1,1,1,2,2,3,原创 2021-03-26 10:52:37 · 228 阅读 · 0 评论 -
LeetCode 289. 生命游戏
题目根据百度百科,生命游戏,简称为生命,是英国数学家约翰·何顿·康威在 1970 年发明的细胞自动机。给定一个包含 m × n 个格子的面板,每一个格子都可以看成是一个细胞。每个细胞都具有一个初始状态:1 即为活细胞(live),或 0 即为死细胞(dead)。每个细胞与其八个相邻位置(水平,垂直,对角线)的细胞都遵循以下四条生存定律:如果活细胞周围八个位置的活细胞数少于两个,则该位置活细胞死亡;如果活细胞周围八个位置有两个或三个活细胞,则该位置活细胞仍然存活;如果活细胞周围八个位置有超..原创 2021-03-24 21:26:33 · 173 阅读 · 0 评论 -
LeetCode 21. 合并两个有序链表
题目将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例 1:输入:l1 = [1,2,4], l2 = [1,3,4]输出:[1,1,2,3,4,4]示例 2:输入:l1 = [], l2 = []输出:[]示例 3:输入:l1 = [], l2 = [0]输出:[0]提示:两个链表的节点数目范围是[0, 50] -100 <= Node.val <= 100 l1和l2均...原创 2021-03-24 09:48:19 · 75 阅读 · 0 评论 -
LeetCode 20. 有效的括号
题目给定一个只包括 '(',')','{','}','[',']'的字符串 s ,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。示例 1:输入:s = "()"输出:true示例2:输入:s = "()[]{}"输出:true示例3:输入:s = "(]"输出:false示例4:输入:s = "([)]"输出:false示例5:输入:s = "{[]}"输出:true...原创 2021-03-23 23:20:05 · 81 阅读 · 0 评论 -
LeetCode 14. 最长公共前缀
题目编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。示例 1:输入:strs = [“flower”,“flow”,“flight”]输出:“fl”示例 2:输入:strs = [“dog”,“racecar”,“car”]输出:""解释:输入不存在公共前缀。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/longest-common-prefix著作权归领扣网络所有。商业转载请联系官方授权,原创 2021-03-23 22:12:36 · 91 阅读 · 0 评论 -
LeetCode 13. 罗马数字转整数
题目罗马数字包含以下七种字符:I,V,X,L,C,D和M。字符 数值I 1V 5X 10L 50C 100D 500M 1000例如, 罗马数字 2 写做II,即为两个并列的 1。12 写做XII,即为X+II。 27 写做XXVII, 即为XX+V+I...原创 2021-03-18 15:46:02 · 165 阅读 · 0 评论 -
LeetCode 9. 回文数
题目给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文,而 123 不是。示例 1:输入:x = 121输出:true示例2:输入:x = -121输出:false解释:从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。示例 3:输入:x = 10输出:false解释:从右向左读, 为 01 。因此它..原创 2021-03-13 10:23:52 · 61 阅读 · 0 评论 -
LeetCode 7. 整数反转
题目给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。如果反转后整数超过 32 位的有符号整数的范围[−231,231− 1] ,就返回 0。假设环境不允许存储 64 位整数(有符号或无符号)。示例 1:输入:x = 123输出:321示例 2:输入:x = -123输出:-321示例 3:输入:x = 120输出:21示例 4:输入:x = 0输出:0提示:来源:力扣(LeetCode)链接:...原创 2021-03-12 21:00:19 · 89 阅读 · 0 评论 -
LeetCode 2. 两数相加
题目给你两个非空 的链表,表示两个非负的整数。它们每位数字都是按照逆序的方式存储的,并且每个节点只能存储一位数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0开头。示例 1:输入:l1 = [2,4,3], l2 = [5,6,4]输出:[7,0,8]解释:342 + 465 = 807.示例 2:输入:l1 = [0], l2 = [0]输出:[0]示例 3:输入:l1 = [9,9,9,9...原创 2021-03-12 16:13:54 · 79 阅读 · 0 评论 -
LeetCode 1.两数之和
题目给定一个整数数组 nums和一个整数目标值 target,请你在该数组中找出 和为目标值 的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。你可以按任意顺序返回答案。示例 1:输入:nums = [2,7,11,15], target = 9输出:[0,1]解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。示例 2:输入:nums = [3,2,4], target = 6输...原创 2021-03-12 16:05:24 · 112 阅读 · 0 评论 -
POJ 1852 Ants
AntsTime Limit:1000MS Memory Limit:30000K Total Submissions:37741 Accepted:13938 DescriptionAn army of ants walk on a horizontal pole of length l cm, each with a constant speed of 1 cm/s. When a walking ant reaches an end of the...原创 2020-10-08 16:00:25 · 90 阅读 · 0 评论 -
POJ 2955 Brackets(括号匹配-区间DP)
题目链接:http://poj.org/problem?id=2955 Brackets Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 8302 Accepted: 4417 Description We give th...原创 2017-07-25 21:42:17 · 448 阅读 · 0 评论 -
CCF201312-2 ISBN号码
问题描述:试题编号: 201312-2 试题名称: ISBN号码 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括9位数字、1位识别码和3位分隔符,其规定格式如“x-xxx-xxxxx-x”,其中符号“-”是分隔符(键盘上的减号),最后一位是...原创 2018-09-13 17:12:34 · 162 阅读 · 0 评论 -
CCF201803-2 碰撞的小球
问题描述:试题编号: 201803-2 试题名称: 碰撞的小球 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 数轴上有一条长度为L(L为偶数)的线段,左端点在原点,右端点在坐标L处。有n个不计体积的小球在线段上,开始时所有的小球都处在偶数坐标上,速度方向向右,速度大小为1单位长度每秒。 当小球...原创 2018-09-11 18:56:49 · 173 阅读 · 0 评论 -
CCF201803-1 跳一跳
问题描述:试题编号: 201803-1 试题名称: 跳一跳 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 近来,跳一跳这款小游戏风靡全国,受到不少玩家的喜爱。 简化后的跳一跳规则如下:玩家每次从当前方块跳到下一个方块,如果没有跳到下一个方块上则游戏结束。 如果跳到了方块上,但没有跳到...原创 2018-09-11 09:46:51 · 140 阅读 · 0 评论 -
CCF201803-3 URL映射
参考:https://blog.csdn.net/wingrez/article/details/82320846 问题描述试题编号: 201803-3 试题名称: URL映射 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 URL 映射是诸如 Django、Ruby on Rails...原创 2018-09-10 21:37:17 · 214 阅读 · 0 评论 -
PAT (Basic Level) 1009 说反话 (20 分)
题目链接:https://pintia.cn/problem-sets/994805260223102976/problems/994805314941992960题目:1009说反话(20分)给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。输入格式:测试输入包含一个测试用例,在一行内给出总长度不超过 80 的字符串。字符串由若干单词和若干空格组成,其中...原创 2019-03-22 16:11:59 · 227 阅读 · 0 评论 -
PAT (Basic Level) 1010 一元多项式求导 (25 分)
题目链接:https://pintia.cn/problem-sets/994805260223102976/problems/994805313708867584题目:设计函数求一元多项式的导数。(注:xn(n为整数)的一阶导数为nxn−1。)输入格式:以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过 1000 的整数)。数字间以空格分隔。输出格式...原创 2019-03-27 22:16:05 · 180 阅读 · 0 评论 -
洛谷 P1980 计数问题
链接:https://www.luogu.org/problemnew/show/P1980题目:题目描述试计算在区间11到nn的所有整数中,数字x(0 ≤ x ≤ 9)x(0≤x≤9)共出现了多少次?例如,在11到1111中,即在1,2,3,4,5,6,7,8,9,10,111,2,3,4,5,6,7,8,9,10,11中,数字11出现了44次。输入输出格式...原创 2019-07-06 00:13:30 · 331 阅读 · 0 评论 -
HDU 1005 Number Sequence(找规律)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1005 Number Sequence Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 179056 Accept...原创 2017-09-13 20:07:52 · 262 阅读 · 0 评论