LeetCode
文章平均质量分 65
拎壶冲1024
这个作者很懒,什么都没留下…
展开
-
跳跃游戏
* 题目描述 给定一个非负整数数组,您最初位于数组的第一个索引处。 数组中的每个元素表示您在该位置的最大跳跃长度。 确定是否能够到达最后一个索引。 示例: A = [2,3,1,1,4],返回 true。 A = [3,2,1,0,4],返回 false。 import java.util.ArrayList;import java.util.List;public cl原创 2018-04-12 15:24:12 · 160 阅读 · 0 评论 -
leetcode13-罗马数字转整数
罗马数字包含以下七种字符:I,V,X,L,C,D和M。字符 数值I 1V 5X 10L 50C 100D 500M 1000例如, 罗马数字 2 写做II,即为两个并列的 1。...原创 2019-07-04 14:22:47 · 102 阅读 · 0 评论 -
leetcode14-最长公共前缀
最长公共前缀,编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 ""。示例1:输入: ["flower","flow","flight"]输出: "fl"示例2:输入: ["dog","racecar","car"]输出: ""解释: 输入不存在公共前缀。* 解题思路 : 默认第一个字符串是最长公共前缀 然后逐个比较寻找对应的公共前...原创 2019-07-04 14:25:04 · 94 阅读 · 0 评论 -
leetcode15-三数之和
给定一个包含 n 个整数的数组nums,判断nums中是否存在三个元素 a,b,c ,使得a + b + c = 0 ?找出所有满足条件且不重复的三元组。注意:答案中不可以包含重复的三元组。例如, 给定数组 nums = [-1, 0, 1, 2, -1, -4],满足要求的三元组集合为:[ [-1, 0, 1], [-1, -1, 2]]*解题思路:先...原创 2019-07-04 14:26:46 · 104 阅读 · 0 评论 -
leetcode16-最接近的三数之和
给定一个包括n 个整数的数组nums和 一个目标值target。找出nums中的三个整数,使得它们的和与target最接近。返回这三个数的和。假定每组输入只存在唯一答案。例如,给定数组 nums = [-1,2,1,-4], 和 target = 1.与 target 最接近的三个数的和为 2. (-1 + 2 + 1 = 2).*解题思路:先将数组排序 因为结构为...原创 2019-07-04 14:28:58 · 106 阅读 · 0 评论 -
leetcode 21-合并两个有序链表
将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4* 解题思路* 遍历l1 l2 直到其中一个遍历完成 再将另一个未遍历的部分放到链表的末尾* 注意( l1 和 l2是否为null ) 如果都...原创 2019-07-09 23:50:36 · 162 阅读 · 0 评论 -
leetcode 22 - 括号生成
题目描述: 给出 n 代表生成括号的对数,请你写出一个函数,使其能够生成所有可能的并且有效的括号组合 例如,给出n = 3,生成结果为: [ "((()))", "(()())", "(())()", "()(())", "()()()" ]* 解题思路:* 递归生成字符串 递归方法 fun...原创 2019-07-10 00:18:52 · 171 阅读 · 0 评论 -
leetcode05-最长回文子串
给定一个字符串s,找到s中最长的回文子串。你可以假设s的最大长度为 1000。示例 1:输入: "babad"输出: "bab"注意: "aba" 也是一个有效答案。示例 2:输入: "cbbd"输出: "bb"判断i到j是不是一个回文串你只需要判断s.charAt(i)与s.charAt(j)是否相等,如果相等在判断看s.charAt(i+1)与s.ch...原创 2019-06-29 23:14:01 · 80 阅读 · 0 评论 -
leetcode06-Z 字形变换
将一个给定字符串根据给定的行数,以从上往下、从左到右进行Z 字形排列。比如输入字符串为 "LEETCODEISHIRING"行数为 3 时,排列如下:L C I RE T O E S I I GE D H N之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:"LCIRETOESIIGEDHN"。示例1:输入: s = "LEETCOD...原创 2019-06-29 23:58:09 · 103 阅读 · 0 评论 -
leetcode07-整数反转
给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例1:输入: 123输出: 321示例 2:输入: -123输出: -321思路:获取余数再相加。存在问题:超出Integer范围;解决方式 :1.使用Long数据类型进行存储,最后返回long.intValue(); 2.判断越界的情况这里主...原创 2019-06-30 23:56:32 · 92 阅读 · 0 评论 -
leetcode12-整数转罗马数字
罗马数字包含以下七种字符:I,V,X,L,C,D和M。字符 数值I 1V 5X 10L 50C 100D 500M 1000例如, 罗马数字 2 写做II,即为两个并列的 1。1...原创 2019-07-04 14:19:30 · 121 阅读 · 0 评论 -
leetcode11-盛最多水的容器
给定 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点(i,ai) 。在坐标内画 n 条垂直线,垂直线 i的两个端点分别为(i,ai) 和 (i, 0)。找出其中的两条线,使得它们与x轴共同构成的容器可以容纳最多的水。* 解题思路 从两边向中间移动 每次移动高度较小的一方 因为i与j的距离在减小* 提高 height[i],height[j]中...原创 2019-07-04 14:14:57 · 96 阅读 · 0 评论 -
leetcode04-寻找两个有序数组的中位数
给定两个大小为 m 和 n 的有序数组nums1 和nums2。请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为O(log(m + n))。你可以假设nums1和nums2不会同时为空。示例 1:nums1 = [1, 3]nums2 = [2]则中位数是 2.0示例 2:nums1 = [1, 2]nums2 = [3, 4]则中位数是 ...原创 2019-06-28 14:59:12 · 120 阅读 · 0 评论 -
给定一个整数数组和一个目标值,找出数组中和为目标值的两个数
给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]class Solution {原创 2018-05-06 00:33:39 · 5971 阅读 · 0 评论 -
leetcode09-回文数
判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。示例 1:输入: 121输出: true示例2:输入: -121输出: false解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。解题思路:1.从量变向中间比较,发现不一样返回FALSE; 2.动态规...原创 2019-07-02 00:02:54 · 97 阅读 · 0 评论 -
leetcode10-正则表达式匹配
给你一个字符串s和一个字符规律p,请你来实现一个支持 '.'和'*'的正则表达式匹配。'.' 匹配任意单个字符'*' 匹配零个或多个前面的那一个元素所谓匹配,是要涵盖整个字符串s的,而不是部分字符串。说明:s可能为空,且只包含从a-z的小写字母。p可能为空,且只包含从a-z的小写字母,以及字符.和*。示例 1:输入:s = "aa"p...原创 2019-07-02 22:05:17 · 130 阅读 · 0 评论 -
leetcode02-两数相加
给出两个非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照逆序的方式存储的,并且它们的每个节点只能存储一位数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0开头。示例:输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 0 ->...原创 2019-06-27 00:04:27 · 72 阅读 · 0 评论 -
leetcode03. 无重复字符的最长子串
给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。 public static int lengthOfLongestSubstring(String s) { int max= 0; String maxSubString =""; for (int i = 0 ; i<s.length() ; i++){ ...原创 2019-06-27 09:37:46 · 90 阅读 · 0 评论 -
leetcode17-电话号码的字母组合
给定一个仅包含数字2-9的字符串,返回所有它能表示的字母组合。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母*解题思路*遍历{"abc","def","ghi","jkl","mno","pqrs","tuv","wxyz"},将对应的字符串的字母分别存入List中*每次遍历把当前字母拼装到已存在的List中的字符串*最后遍历临时List 把长度和...原创 2019-07-08 19:38:11 · 788 阅读 · 0 评论 -
leetcode18-四数之和
给定一个包含n 个整数的数组nums和一个目标值target,判断nums中是否存在四个元素 a,b,c和 d,使得a + b + c + d的值与target相等?找出所有满足条件且不重复的四元组。注意:答案中不可以包含重复的四元组。示例:给定数组 nums = [1, 0, -1, 0, -2, 2],和 target = 0。满足要求的四元组集合为...原创 2019-07-08 21:29:08 · 124 阅读 · 0 评论 -
leetcode19-删除链表的倒数第N个节点
给定一个链表,删除链表的倒数第n个节点,并且返回链表的头结点。示例:给定一个链表: 1->2->3->4->5, 和 n = 2.当删除了倒数第二个节点后,链表变为 1->2->3->5.说明:给定的 n保证是有效的。*解题思路* 前提 (head表示的就是第一个元素leetcoded中传入的数据)* 先创建一个节点be...原创 2019-07-08 22:44:13 · 112 阅读 · 0 评论 -
leetcode 20-有效的括号
给定一个只包括 '(',')','{','}','[',']'的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串* 解题思路* 利用stack* 如果s.charAt(i)是左括号,存入对应的右括号 例如 s.charAt(i)=='(' stack存入')'* 如果不是左...原创 2019-07-08 23:06:02 · 158 阅读 · 0 评论 -
leetcode08-字符串转换整数 (atoi)
请你来实现一个atoi函数,使其能将字符串转换成整数。首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。当我们寻找到的第一个非空字符为正或者负号时,则将该符号与之后面尽可能多的连续数字组合起来,作为该整数的正负号;假如第一个非空字符是数字,则直接将其与之后连续的数字字符组合起来,形成整数。该字符串除了有效的整数部分之后也可能会存在多余的字符,这些字符可...原创 2019-07-01 01:04:04 · 132 阅读 · 0 评论