
LeetCode
icegarlic。
这个作者很懒,什么都没留下…
展开
-
LeetCode 21. 合并两个有序链表 (Java)
将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4思路:采用递归的方式反复调用mergeTwoLists() 方法。每次递归比较俩个链表的节点。/** * Definition for singl...原创 2019-04-08 21:27:36 · 357 阅读 · 0 评论 -
LeetCode 35. 搜索插入位置 (Java)
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。你可以假设数组中无重复元素。示例1:输入: [1,3,5,6], 5输出: 2示例2:输入: [1,3,5,6], 2输出: 1示例3:输入: [1,3,5,6], 7输出: 4示例4:输入: [1,3,5,6], 0输出: 0...原创 2019-04-29 18:57:16 · 257 阅读 · 1 评论 -
LeetCode 28. 实现strStr() (Java)
实现strStr()函数。给定一个haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在,则返回 -1。示例 1:输入: haystack = "hello", needle = "ll"输出: 2示例 2:输入: haystack = "aaaaa", needle...原创 2019-04-23 22:25:43 · 254 阅读 · 0 评论 -
LeetCode 26. 删除排序数组中的重复项(Java)
给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。示例1:给定数组 nums = [1,1,2], 函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。 你不需要考虑数组中超出新长度后面的元素。示例2:...原创 2019-04-09 21:44:42 · 730 阅读 · 1 评论 -
LeetCode 27. 移除元素 (Java)
给定一个数组 nums和一个值 val,你需要原地移除所有数值等于val的元素,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。示例1:给定 nums = [3,2,2,3], val = 3,函数应该返回新的长度 2, 并且 nums 中的前两个元素均...原创 2019-04-12 20:41:17 · 416 阅读 · 0 评论 -
LeetCode 1.俩数之和(Java)
给定一个整数数组 nums和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]...原创 2019-03-26 10:31:49 · 171 阅读 · 0 评论 -
LeetCode 7.整数反转(Java)
给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例1:输入: 123输出: 321示例2:输入: -123输出: -321示例3:输入: 120输出: 21注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为[−231, 231− 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。思路:利用tr...原创 2019-03-27 23:53:21 · 178 阅读 · 0 评论 -
LeetCode 9.回文数(Java)
判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。示例1:输入: 121输出: true示例2:输入: -121输出: false解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。示例3:输入: 10输出: false解释: 从右向左读, 为 01 。因此它不是一个回文数。思...原创 2019-03-30 16:01:55 · 115 阅读 · 0 评论 -
LeetCode 13.罗马数字转整数(Java)
罗马数字包含以下七种字符:I,V,X,L,C,D和M。字符 数值I 1V 5X 10L 50C 100D 500M 1000例如, 罗马数字 2 写做II,即为两个并列的 1...原创 2019-03-31 16:21:33 · 111 阅读 · 0 评论 -
LeetCode 14. 最长公共前缀 (Java)
编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串""。示例1:输入: ["flower","flow","flight"]输出: "fl"示例2:输入: ["dog","racecar","car"]输出: ""解释: 输入不存在公共前缀。说明:所有输入只包含小写字母 a-z。官方思路:使用水平扫描法。首先,我们将...转载 2019-04-01 20:35:40 · 422 阅读 · 0 评论 -
LeetCode 20. 有效的括号 (Java)
给定一个只包括 '(',')','{','}','[',']'的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。示例1:输入: "()"输出: true示例2:输入: "()[]{}"输出: true示例3:输入: "(]"输出: false示例4:...原创 2019-04-04 19:54:09 · 176 阅读 · 0 评论 -
LeetCode 101. 对称二叉树 (Java)
给定一个二叉树,检查它是否是镜像对称的。例如,二叉树[1,2,2,3,4,4,3] 是对称的。 1 / \ 2 2 / \ / \ 3 4 4 3但是下面这个[1,2,2,null,3,null,3] 则不是镜像对称的: 1 / \ 2 2 \ \ 3 3采用递归的方法:/**...原创 2019-06-12 19:28:14 · 97 阅读 · 0 评论