1 java_liuguoyao

尚未进行身份认证

暂无相关描述

等级
博文 37
排名 23w+

334. 递增的三元子序列

给定一个未排序的数组,判断这个数组中是否存在长度为3的递增子序列。数学表达式如下:如果存在这样的i,j,k,且满足0≤i<j<k≤n-1,使得arr[i]<arr[j]<arr[k],返回true;否则返回false。逻辑非常简单,不清楚的在纸上写一遍全清楚了,直接贴出代码如下classSolution{...

2019-04-30 09:45:29

5.最长回文字串

给定一个字符串s,找到s中最长的回文子串。你可以假设s的最大长度为1000。示例1:输入:“babad”输出:“bab”注意:“aba”也是一个有效答案。第一种,马拉车算法,classSolution{publicStringlongestPalindrome(Strings){//Insert'#'S...

2019-04-29 14:49:59

3. 无重复字符的最长子串

给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。示例1:输入:“abcabcbb”输出:3解释:因为无重复字符的最长子串是“abc”,所以其长度为3。博主代码,耗时久classSolution{publicintlengthOfLongestSubstring(Strings){if(s.equals("")){...

2019-04-16 10:34:20

49. 字母异位词分组

给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。示例:输入:[“eat”,“tea”,“tan”,“ate”,“nat”,“bat”],输出:[[“ate”,“eat”,“tea”],[“nat”,“tan”],[“bat”]]说明:所有输入均为小写字母。不考虑答案输出的顺序。思路很清晰,不用多解释,代码如下:class...

2019-04-15 11:14:51

73.矩阵置零

给定一个mxn的矩阵,如果一个元素为0,则将其所在行和列的所有元素都设为0。请使用原地算法。进阶:一个直接的解决方案是使用O(mn)的额外空间,但这并不是一个好的解决方案。一个简单的改进方案是使用O(m+n)的额外空间,但这仍然不是最好的解决方案。你能想出一个常数空间的解决方案吗?博主第一种解法思路简单,耗时久classSolution{publ...

2019-04-12 11:13:06

15.三数之和

给定一个包含n个整数的数组nums,判断nums中是否存在三个元素a,b,c,使得a+b+c=0?找出所有满足条件且不重复的三元组。注意:答案中不可以包含重复的三元组。有两种写法:第一种耗时久,但容易解读classSolution{publicList<List<Integer>>threeSum(int[]nums)...

2019-04-11 14:03:00

20. 有效的括号

给定一个只包括‘(’,’)’,’{’,’}’,’[’,’]’的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。classSolution{publicbooleanisValid(Strings){//假如长度是1或者不为偶数if(s...

2019-04-10 09:37:40

leetcode之汉明重量和汉明距离(简单)

1.编写一个函数,输入是一个无符号整数,返回其二进制表达式中数字位数为‘1’的个数(也被称为汉明重量)代码如下,使用与运算publicclassSolution{//youneedtotreatnasanunsignedvaluepublicinthammingWeight(intn){intk=0;...

2019-03-07 14:03:48

leetcode之53最大子序和

给定一个整数数组nums,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例:输入:[-2,1,-3,4,-1,2,1,-5,4],输出:6解释:连续子数组[4,-1,2,1]的和最大,为6。进阶:如果你已经实现复杂度为O(n)的解法,尝试使用更为精妙的分治法求解。第一种解法复杂度为O(n);思路简单classSolution{...

2019-01-30 16:36:08

leetcode之121买卖股票的最佳时机

给定一个数组,它的第i个元素是一支给定股票第i天的价格。如果你最多只允许完成一笔交易(即买入和卖出一支股票),设计一个算法来计算你所能获取的最大利润。注意你不能在买入股票前卖出股票。示例1:输入:[7,1,5,3,6,4]输出:5解释:在第2天(股票价格=1)的时候买入,在第5天(股票价格=6)的时候卖出,最大利润=6-1=5。注意利润不能是...

2019-01-30 14:53:06

leetcode之278第一个错误的版本

你是产品经理,目前正在带领一个团队开发新的产品。不幸的是,你的产品的最新版本没有通过质量检测。由于每个版本都是基于之前的版本开发的,所以错误的版本之后的所有版本都是错的。假设你有n个版本[1,2,…,n],你想找出导致之后所有版本出错的第一个错误的版本。你可以通过调用boolisBadVersion(version)接口来判断版本号version是否在单元测试中出错。实现...

2019-01-29 17:56:40

leetcode之88合并两个有序数组

给定两个有序整数数组nums1和nums2,将nums2合并到nums1中,使得num1成为一个有序数组。说明:初始化nums1和nums2的元素数量分别为m和n。你可以假设nums1有足够的空间(空间大小大于或等于m+n)来保存nums2中的元素。示例:输入:nums1=[1,2,3,0,0,0],m=3nums2=[2...

2019-01-29 17:12:23

leetcode之108将有序数组转换为二叉搜索树

将一个按照升序排列的有序数组,转换为一棵高度平衡二叉搜索树。本题中,一个高度平衡二叉树是指一个二叉树每个节点的左右两个子树的高度差的绝对值不超过1。示例:给定有序数组:[-10,-3,0,5,9],一个可能的答案是:[0,-3,9,-10,null,5],它可以表示下面这个高度平衡二叉搜索树:0/\-39//-105...

2019-01-28 16:06:01

leetcode之102二叉树的层次遍历

给定一个二叉树,返回其按层次遍历的节点值。(即逐层地,从左到右访问所有节点)。例如:给定二叉树:[3,9,20,null,null,15,7],3/\920/\157返回其层次遍历结果:[[3],[9,20],[15,7]]代码如下:classSolution{publicList&l...

2019-01-28 15:22:29

leetcode之101对称二叉树

给定一个二叉树,检查它是否是镜像对称的。例如,二叉树[1,2,2,3,4,4,3]是对称的。1/\22/\/\3443但是下面这个[1,2,2,null,3,null,3]则不是镜像对称的:1/\22\\33第一种方法:使用递归如果一个树的左子树与右子树镜像对称,...

2019-01-28 14:27:13

leetcode之98验证二叉搜索树

给定一个二叉树,判断其是否是一个有效的二叉搜索树。假设一个二叉搜索树具有如下特征:节点的左子树只包含小于当前节点的数。节点的右子树只包含大于当前节点的数。所有左子树和右子树自身必须也是二叉搜索树。示例1:输入:2/\13输出:true示例2:输入:5/\14/\36...

2019-01-27 18:01:04

leetcode之234回文链表

请判断一个链表是否为回文链表。示例1:输入:1->2输出:false示例2:输入:1->2->2->1输出:true进阶:你能否用O(n)时间复杂度和O(1)空间复杂度解决此题?此题分三步进行:第一步先找出中间节点,第二步从中间节点开始反转,第三步比较后面部分反转后与前面部分是否相等,代码如下:classSolution{...

2019-01-26 21:30:53

leetcode之14最长公共前缀

编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串“”。示例1:输入:[“flower”,“flow”,“flight”]输出:“fl”示例2:输入:[“dog”,“racecar”,“car”]输出:“”解释:输入不存在公共前缀。说明:所有输入只包含小写字母a-z。第一次实现代码:思路简单,直接贴出classSolutio...

2019-01-26 01:11:15

leetcode之38报数

报数序列是一个整数序列,按照其中的整数的顺序进行报数,得到下一个数。其前五项如下:1112112111112211被读作“one1”(“一个一”),即11。11被读作“two1s”(“两个一”),即21。21被读作“one2”,“one1”(“一个二”,“一个一”),即1211。给定一个正整...

2019-01-25 17:35:54

leetcode之实现strStr()

实现strStr()函数。给定一个haystack字符串和一个needle字符串,在haystack字符串中找出needle字符串出现的第一个位置(从0开始)。如果不存在,则返回-1。示例1:输入:haystack=“hello”,needle=“ll”输出:2示例2:输入:haystack=“aaaaa”,needle=“bba...

2019-01-25 15:24:25
奖章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周上午根据用户上周的博文发布情况由系统自动颁发。