随笔分类 -  LeetCode

摘要:剑指Offer& LeetCode:验证栈序列【946】 题目描述 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1 阅读全文
posted @ 2020-01-08 17:01 子烁爱学习 阅读(439) 评论(0) 推荐(0) 编辑
摘要:LeetCode:缺失的第一个正数【41】 题目描述 给定一个未排序的整数数组,找出其中没有出现的最小的正整数。 示例 1: 输入: [1,2,0] 输出: 3示例 2: 输入: [3,4,-1,1] 输出: 2示例 3: 输入: [7,8,9,11,12] 输出: 1说明: 你的算法的时间复杂度应 阅读全文
posted @ 2019-10-13 16:58 子烁爱学习 阅读(271) 评论(0) 推荐(0) 编辑
摘要:LeetCode:接雨水【42】 题目描述 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图,在这种情况下,可以接 6 个单位的雨水(蓝色部分表示雨水)。 感谢 Marc 阅读全文
posted @ 2019-10-11 22:40 子烁爱学习 阅读(226) 评论(0) 推荐(0) 编辑
摘要:LeetCode:四数之和【18】 题目描述 给定一个包含 n 个整数的数组 nums 和一个目标值 target,判断 nums 中是否存在四个元素 a,b,c 和 d ,使得 a + b + c + d 的值与 target 相等?找出所有满足条件且不重复的四元组。 注意: 答案中不可以包含重复 阅读全文
posted @ 2019-09-30 15:57 子烁爱学习 阅读(345) 评论(0) 推荐(0) 编辑
摘要:LeetCode:字符串相加【415】 题目描述 给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和。 注意: num1 和num2 的长度都小于 5100.num1 和num2 都只包含数字 0-9.num1 和num2 都不包含任何前导零。你不能使用任何內建 BigInteger 阅读全文
posted @ 2019-09-29 19:08 子烁爱学习 阅读(338) 评论(0) 推荐(0) 编辑
摘要:LeetCode:打印零与奇偶数【1116】 题目描述 假设有这么一个类: 相同的一个 ZeroEvenOdd 类实例将会传递给三个不同的线程: 线程 A 将调用 zero(),它只输出 0 。 线程 B 将调用 even(),它只输出偶数。 线程 C 将调用 odd(),它只输出奇数。 每个线程都 阅读全文
posted @ 2019-07-31 14:53 子烁爱学习 阅读(1074) 评论(0) 推荐(0) 编辑
摘要:LeetCode:交替打印【1115】 题目描述 我们提供一个类: 两个不同的线程将会共用一个 FooBar 实例。其中一个线程将会调用 foo() 方法,另一个线程将会调用 bar() 方法。 请设计修改程序,以确保 "foobar" 被输出 n 次。 示例 1: 输入: n = 1输出: "fo 阅读全文
posted @ 2019-07-30 16:25 子烁爱学习 阅读(555) 评论(0) 推荐(0) 编辑
摘要:LeetCode:按序打印【1114】 题目描述 我们提供了一个类: 1 2 3 4 5 public class Foo { public void one() { print("one"); } public void two() { print("two"); } public void th 阅读全文
posted @ 2019-07-29 09:49 子烁爱学习 阅读(543) 评论(0) 推荐(0) 编辑
摘要:LeetCode:整数转罗马数字【12】 题目描述 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。 例如, 罗马数字 2 写做 II ,即为两个并列的 1。12 写做 XII ,即为 X + II 。 27 写做 XXVII, 即为 XX + V + II 。 通常情况下,罗马数 阅读全文
posted @ 2018-11-09 13:43 子烁爱学习 阅读(355) 评论(0) 推荐(0) 编辑
摘要:LeetCode:最长公共前缀【14】 题目描述 编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回空字符串 ""。 示例 1: 示例 2: 说明: 所有输入只包含小写字母 a-z 。 题目分析 我刚开始还想着排个序,找个最短的字符串开始,其实无所谓,随便找一个字符串然后数组中 阅读全文
posted @ 2018-11-08 22:02 子烁爱学习 阅读(246) 评论(0) 推荐(0) 编辑
摘要:LeetCode:分割链表【86】 题目描述 给定一个链表和一个特定值 x,对链表进行分隔,使得所有小于 x 的节点都在大于或等于 x 的节点之前。 你应当保留两个分区中每个节点的初始相对位置。 示例: 题目分析 这道题有总体思路是从头到尾扫描一次链表,将那些小于的节点放在一条链表上,大的放到一条链 阅读全文
posted @ 2018-11-08 20:30 子烁爱学习 阅读(134) 评论(0) 推荐(0) 编辑
摘要:LeetCode:为运算表达式设置优先级【241】 题目描述 给定一个含有数字和运算符的字符串,为表达式添加括号,改变其运算优先级以求出不同的结果。你需要给出所有可能的组合的结果。有效的运算符号包含 +, - 以及 * 。 示例 1: 示例 2: 题目分析 这道题的核心概念是找一个位置去分割表达式, 阅读全文
posted @ 2018-11-08 17:09 子烁爱学习 阅读(599) 评论(0) 推荐(0) 编辑
摘要:LeetCode:搜索二维矩阵【74】 题目描述 编写一个高效的算法来判断 m x n 矩阵中,是否存在一个目标值。该矩阵具有如下特性: 每行中的整数从左到右按升序排列。 每行的第一个整数大于前一行的最后一个整数。 示例 1: 示例 2: 题目分析 这道题目比较简单,首先我们不从(0,0)出发,我们 阅读全文
posted @ 2018-11-08 11:13 子烁爱学习 阅读(249) 评论(0) 推荐(0) 编辑
摘要:LeetCode:搜索旋转排序数组【33】 题目描述 假设按照升序排序的数组在预先未知的某个点上进行了旋转。 ( 例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] )。 搜索一个给定的目标值,如果数组中存在这个目标值,则返回它的索引,否则返回 -1 。 你可以假设 阅读全文
posted @ 2018-11-08 10:47 子烁爱学习 阅读(699) 评论(0) 推荐(0) 编辑
摘要:LeetCode:数据库技术【180-185】 180.连续出现的数字 题目描述 编写一个 SQL 查询,查找所有至少连续出现三次的数字。 例如,给定上面的 Logs 表, 1 是唯一连续出现至少三次的数字。 题目分析 这道题目已经不是基础题目了,我们需要转换思维了。题目中明确说了是连续出现了三次相 阅读全文
posted @ 2018-11-05 18:38 子烁爱学习 阅读(190) 评论(0) 推荐(0) 编辑
摘要:LeetCode:数据库技术【175-178】 LeetCode已经刷完200道题目,但这只是开始,下一段时间,仍然把刷题作为重点,争取再次完成200道,本篇博客将会带大家熟悉一些数据库面试题,从简单到复杂,并且会把相关知识点全部阐述一下。 175.组合两个表 题目描述 表1: Person 表2: 阅读全文
posted @ 2018-11-05 11:39 子烁爱学习 阅读(348) 评论(0) 推荐(0) 编辑
摘要:LeetCode:矩阵置零【73】 题目描述 给定一个 m x n 的矩阵,如果一个元素为 0,则将其所在行和列的所有元素都设为 0。请使用原地算法。 示例 1: 示例 2: 进阶: 一个直接的解决方案是使用 O(mn) 的额外空间,但这并不是一个好的解决方案。 一个简单的改进方案是使用 O(m + 阅读全文
posted @ 2018-11-02 23:31 子烁爱学习 阅读(321) 评论(0) 推荐(0) 编辑
摘要:LeetCode:螺旋矩阵||【59】 题目描述 给定一个正整数 n,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的正方形矩阵。 示例: 输入: 3 输出: [ [ 1, 2, 3 ], [ 8, 9, 4 ], [ 7, 6, 5 ] ] 给定一个正整数 n,生成一个包含 1 阅读全文
posted @ 2018-11-02 22:52 子烁爱学习 阅读(183) 评论(0) 推荐(0) 编辑
摘要:LeetCode:旋转链表【61】 题目描述 给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数。 示例 1: 示例 2: 题目分析 这道题目我用了最笨的方法,我假设每次只向右旋转一个单位,然后执行N次。 向右旋转一个单位怎么处理呢? 找到最后两个节点,让最后一个节点的n 阅读全文
posted @ 2018-11-02 22:36 子烁爱学习 阅读(124) 评论(0) 推荐(0) 编辑
摘要:LeetCode:旋转图像【48】 题目描述 给定一个 n × n 的二维矩阵表示一个图像。 将图像顺时针旋转 90 度。 说明: 你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。 示例 1: 示例 2: 题目分析 最笨的方法是模拟,可是在短时间内根本无法 阅读全文
posted @ 2018-11-02 16:52 子烁爱学习 阅读(212) 评论(0) 推荐(0) 编辑