LeetCode
冯敬腾爱打雷
这个作者很懒,什么都没留下…
展开
-
一天一道LeetCode(二)3. 无重复字符的最长子串
3. 无重复字符的最长子串题目描述:给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例:示例 1:输入: "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。示例 2:输入: "bbbbb"输出: 1解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。示例 3:输入: "pwwkew"输出: ...原创 2019-03-29 22:15:45 · 146 阅读 · 0 评论 -
一天一道LeetCode(九)102. 二叉树的层次遍历
235.给定一个二叉树,返回其按层次遍历的节点值。 (即逐层地,从左到右访问所有节点)。例如:给定二叉树: [3,9,20,null,null,15,7] 3 / \ 9 20 / \ 15 7返回其层次遍历结果:[ [3], [9,20], [15,7]]BFS解题思路:明显的广度优先遍历,但主要的难点在于如何在遍历的过程中记...原创 2019-07-05 20:03:41 · 145 阅读 · 0 评论 -
一天一道LeetCode(十)226. 翻转二叉树
翻转一棵二叉树。示例:输入: 4 / \ 2 7 / \ / \1 3 6 9输出: 4 / \ 7 2 / \ / \9 6 3 1homebrew 估计用mac的同学都不陌生,该作者在进谷歌时却栽在这道题上,不由得让人唏嘘。谷歌:我们90%的工程师使用您编写的软件(Homebrew),...原创 2019-07-10 00:01:14 · 155 阅读 · 0 评论 -
一天一道LeetCode(八). 235. 二叉搜索树的最近公共祖先 236. 二叉树的最近公共祖先
给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。”例如,给定如下二叉树: root = [3,5,1,6,2,0,8,null,null,7,4]示例 1:输入: root = [3,5,1...原创 2019-07-03 16:27:08 · 206 阅读 · 0 评论 -
一天一道LeetCode(六)11. 盛最多水的容器
11. 盛最多水的容器给定 n 个非负整数 a1,a2,...,ana_1,a_2,...,a_na1,a2,...,an,每个数代表坐标中的一个点 (i, aia_iai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, aia_iai) 和 (i, 0)。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。说明:你不能倾斜容器,且 n 的值至少为...原创 2019-04-03 16:06:38 · 197 阅读 · 0 评论 -
一天一道LeetCode(五)8. 字符串转换整数 (atoi)
8. 字符串转换整数 (atoi)请你来实现一个 atoi 函数,使其能将字符串转换成整数。首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。当我们寻找到的第一个非空字符为正或者负号时,则将该符号与之后面尽可能多的连续数字组合起来,作为该整数的正负号;假如第一个非空字符是数字,则直接将其与之后连续的数字字符组合起来,形成整数。该字符串除了有效的整数部分之后也可...原创 2019-04-02 14:42:22 · 142 阅读 · 0 评论 -
一天一道LeetCode(一)21.合并两个有序链表
21. 合并两个有序链表题目描述:将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4解题思路:穿针引线法,设置一个空表头,不断将L1,L2中较小的数挂在表头后边# Definition for singl...原创 2019-03-28 20:18:03 · 170 阅读 · 0 评论 -
一天一道LeetCode(四)6. Z 字形变换
6. Z 字形变换问题描述:将一个给定字符串根据给定的行数,以从上往下、从左到右进行 Z 字形排列。比如输入字符串为 “LEETCODEISHIRING” 行数为 3 时,排列如下:L C I RE T O E S I I GE D H N之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:"LCIRETOESIIGEDHN"。请你实现这个将字...原创 2019-04-01 21:21:00 · 237 阅读 · 0 评论 -
一天一道LeetCode(三)5. 最长回文子串
5. 最长回文子串题目描述:给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。示例 1:输入: "babad"输出: "bab"注意: "aba" 也是一个有效答案。示例 2:输入: "cbbd"输出: "bb"解题思路:依次遍历从中心扩展,可能有“aba“型,也可能是”bb“型class Solution: def lon...原创 2019-04-01 19:53:27 · 192 阅读 · 0 评论 -
一天一道LeetCode(七)15. 三数之和
15. 三数之和给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组。注意:答案中不可以包含重复的三元组。例如, 给定数组 nums = [-1, 0, 1, 2, -1, -4],满足要求的三元组集合为:[ [-1, 0, 1], [-1, -1, 2]]解题思路...原创 2019-04-04 16:56:22 · 144 阅读 · 0 评论 -
一天一道LeetCode(十一)104. 二叉树的最大深度 111. 二叉树的最小深度
最近在学习递归,找两道例题练手二叉树的最大深度给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。说明: 叶子节点是指没有子节点的节点。示例:给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回它的最大深度 3 。思路:递归深度遍历/** * D...原创 2019-07-12 11:24:33 · 158 阅读 · 0 评论