
LeetCode刷题
LeetCode刷题
汤姆鱼
微信公众号「汤姆鱼」
展开
-
(LeetCode篇)5. 有效的括号
题目描述:给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。示例 1:输入: "()"输出: true示例 2:输入: "()[]{}"输出: true分析:利用栈的性...原创 2019-08-13 16:36:20 · 143 阅读 · 0 评论 -
(LeetCode篇)7. 删除排序数组中的重复项
题目描述:给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。示例1:给定数组 nums = [1,1,2],函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。你不需要考虑数组中超出新长度后面的元素。...原创 2019-08-16 15:16:41 · 192 阅读 · 0 评论 -
(LeetCode篇)10. 最大子序和
题目描述:给定一个整数数组 nums,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例:输入: [-2,1,-3,4,-1,2,1,-5,4],输出: 6解释:连续子数组[4,-1,2,1] 的和最大,为6。完整代码:lass Solution {public: int maxSubArray(vector<...原创 2019-08-25 12:06:57 · 121 阅读 · 0 评论 -
(LeetCode篇)3. 罗马数字转整数
题目描述:罗马数字包含以下七种字符:I,V,X,L,C,D和M。字符 数值I 1V 5X 10L 50C 100D 500M 1000例如, 罗马数字 2 写...原创 2019-08-11 16:52:14 · 143 阅读 · 0 评论 -
(LeetCode篇)6. 合并两个有序链表
题目描述:将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4分析:思路:我们可以用迭代的方法来实现上述算法。我们假设 l1 元素严格比 l2元素少,我们可以将 l2 中的元素逐一插入...原创 2019-08-15 11:06:18 · 199 阅读 · 0 评论 -
(LeetCode篇)2. 整数反转
题目描述:给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例1:输入: 123输出: 321注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为[−231, 231− 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。分析:获取整数的最低位的方法之一:while( x != 0){ i...原创 2019-08-10 22:05:58 · 169 阅读 · 0 评论 -
(LeetCode篇)9. 报数
题目描述:报数序列是一个整数序列,按照其中的整数的顺序进行报数,得到下一个数。其前五项如下:1. 12. 113. 214. 12115. 1112211被读作"one 1"("一个一") , 即11。11 被读作"two 1s"("两个一"), 即21。21 被读作"one 2", "one 1"("一个二...转载 2019-08-19 22:15:04 · 134 阅读 · 0 评论 -
(LeetCode篇)1. 两数之和
题目描述:给定一个整数数组 nums和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1...原创 2019-08-09 21:32:44 · 213 阅读 · 0 评论 -
(LeetCode篇)8. 实现strStr()
题目描述:给定一个haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在,则返回-1。示例 1:输入: haystack = "hello", needle = "ll"输出: 2示例 2:输入: haystack = "aaaaa", needle = "bba"输出...原创 2019-08-18 21:17:33 · 159 阅读 · 0 评论 -
(LeetCode篇)4. 最长公共前缀
题目描述:编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串""。示例1:输入: ["flower","flow","flight"]输出: "fl"说明:所有输入只包含小写字母a-z。分析:最长的公共前缀与最短的字符串有关(1)、找出字符串中最短的子字符串;(2)、再将字符串的单个子字符串与最短字符分别比较,找...原创 2019-08-12 22:14:47 · 227 阅读 · 0 评论