
每日力扣Leetcode
T型人小付
任职于某游戏公司新加坡分部,自动化运维/python全栈/IT,梦想是35岁前可以不需要通过投简历的方式换工作。
展开
-
【每日力扣Leetcode】1114-按序打印(多解法来深入理解python中的锁和阻塞)
力扣题库1114,在单例模式的前提下,使得类中的3个方法按照指定顺序执行。题目链接点这里。文章目录题目描述解题思路初始答案改进答案一改进答案二改进答案三注意事项题目描述我们提供了一个类:public class Foo { public void first() { print("first"); } public void second() { print("second"); } public void third() { print("third"); }}三个不同的线程将原创 2020-11-20 15:35:45 · 701 阅读 · 1 评论 -
【每日力扣Leetcode】144+94+145-利用迭代返回二叉树的前序中序和后续遍历
力扣题库144+94+145,利用迭代返回二叉树的前中后序遍历。题目链接分别是144-前序,94-中序,145-后序文章目录题目描述解题思路初始答案前序遍历中序遍历后序遍历改进答案注意事项题目描述题目都是一句话,主要就是突出使用迭代的方法,而不是我们常用的递归。解题思路只要是能用递归解决的问题都是可以用迭代来解决的。递归说白了就是隐性地声明了一个栈(stack),同一个函数,前面还未处理完的先依次压进栈里面,一直到最后递归退出,开始从后往前回溯的时候,就是函数依次出栈的时候了。将递归转换为迭原创 2020-09-14 16:32:00 · 194 阅读 · 0 评论 -
【每日力扣Leetcode】13-罗马数字转整数
力扣题库13,罗马数字转整数。题目链接点这里。文章目录题目描述解题思路初始答案改进答案注意事项题目描述罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。字符 数值I 1V 5X 10L 50C 100D 500M 1000例如, 罗马数字 2 写做 II ,即为两个并列的 1。12原创 2020-09-03 21:26:00 · 270 阅读 · 0 评论 -
【每日力扣Leetcode】14-查找字符串数组中的最长公共前缀
力扣题库14,查找字符串数组中的最长公共前缀。题目链接点这里。文章目录题目描述解题思路初始答案改进答案注意事项题目描述编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。示例 1:输入: [“flower”,“flow”,“flight”]输出: “fl”示例 2:输入: [“dog”,“racecar”,“car”]输出: “”解释: 输入不存在公共前缀。说明:所有输入只包含小写字母 a-z 。解题思路一看这道题就会涉及到遍历操作。做了几道原创 2020-09-03 20:59:46 · 778 阅读 · 0 评论 -
【每日力扣Leetcode】109-将有序链表转换为二叉搜索树
力扣题库109,将有序链表转换为二叉搜索树。题目链接点这里。文章目录题目描述解题思路初始答案改进答案注意事项题目描述给定一个单链表,其中的元素按升序排序,将其转换为高度平衡的二叉搜索树。本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1。示例:给定的有序链表: [-10, -3, 0, 5, 9],一个可能的答案是:[0, -3, 9, -10, null, 5], 它可以表示下面这个高度平衡二叉搜索树: 0 / \ -3原创 2020-08-31 16:55:53 · 298 阅读 · 0 评论 -
【每日力扣Leetcode】108-将有序数组转换为二叉搜索树
力扣题库108,将有序数组转换为二叉搜索树。题目链接点这里。文章目录题目描述解题思路初始答案改进答案注意事项题目描述将一个按照升序排列的有序数组,转换为一棵高度平衡二叉搜索树。本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1。示例:给定有序数组: [-10,-3,0,5,9],一个可能的答案是:[0,-3,9,-10,null,5],它可以表示下面这个高度平衡二叉搜索树: 0 / \ -3 9 / / -1原创 2020-08-31 15:43:38 · 258 阅读 · 0 评论 -
【每日力扣Leetcode】459-判断一个字符串是否由子字符串重复组成
力扣题库459,判断一个字符串是否由子字符串重复组成。题目链接点这里。文章目录题目描述解题思路初始答案改进答案注意事项题目描述给定一个非空的字符串,判断它是否可以由它的一个子串重复多次构成。给定的字符串只含有小写英文字母,并且长度不超过10000。示例 1:输入: “abab”输出: True解释: 可由子字符串 “ab” 重复两次构成。示例 2:输入: “aba”输出: False示例 3:输入: “abcabcabcabc”输出: True解释: 可由子字符串 “abc”原创 2020-08-25 17:25:47 · 2610 阅读 · 0 评论 -
【每日力扣Leetcode】111-计算一个二叉树的最小深度
力扣题库111,计算一个二叉树的最小深度。题目链接点这里。文章目录题目描述解题思路初始答案改进答案注意事项题目描述给定一个二叉树,找出其最小深度。最小深度是从根节点到最近叶子节点的最短路径上的节点数量。说明: 叶子节点是指没有子节点的节点。示例:给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回它的最小深度 2.解题思路本题思路比较简单,利用DFS,迭代从下至上深度依次加1即可。要注意的原创 2020-08-22 08:01:07 · 297 阅读 · 0 评论 -
【每日力扣Leetcode】110-判断一个二叉树是不是平衡二叉树
力扣题库110,判断一个二叉树是不是平衡二叉树。题目链接点这里。文章目录题目描述解题思路初始答案改进答案注意事项题目描述给定一个二叉树,判断它是否是高度平衡的二叉树。本题中,一棵高度平衡二叉树定义为:一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过1。示例 1:给定二叉树 [3,9,20,null,null,15,7] 3 / \ 9 20 / \ 15 7返回 true 。示例 2:给定二叉树 [1,2,2,3,3,null,null,原创 2020-08-18 23:31:18 · 365 阅读 · 0 评论