LeetCode题解
文章平均质量分 69
我怎么又饿了呀
你说那么多,我又不会咋整
展开
-
LeetCode(879. 盈利计划)
LeetCode(879. 盈利计划)集团里有 n 名员工,他们可以完成各种各样的工作创造利润。第i种工作会产生profit[i]的利润,它要求group[i]名成员共同参与。如果成员参与了其中一项工作,就不能参与另一项工作。工作的任何至少产生minProfit 利润的子集称为 盈利计划 。并且工作的成员总数最多为 n 。有多少种计划可以选择?因为答案很大,所以 返回结果模10^9 + 7的值。示例 1:输入:n = 5, minProfit = 3, gro...原创 2021-06-09 10:46:16 · 269 阅读 · 1 评论 -
N皇后问题(Python3解法)
n皇后问题 研究的是如何将 n个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。给你一个整数 n ,返回所有不同的n皇后问题 的解决方案。每一种解法包含一个不同的n 皇后问题 的棋子放置方案,该方案中 'Q' 和 '.' 分别代表了皇后和空位来源:力扣(LeetCode)...原创 2021-06-08 15:20:53 · 833 阅读 · 0 评论 -
LeetCode(740. 删除并获得点数)
LeetCode(740. 删除并获得点数)题目描述:给你一个整数数组nums,你可以对它进行一些操作。每次操作中,选择任意一个nums[i],删除它并获得nums[i]的点数。之后,你必须删除每个等于nums[i] - 1或nums[i] + 1的元素。开始你拥有 0 个点数。返回你能通过这些操作获得的最大点数。示例 1:输入:nums = [3,4,2]输出:6解释:删除 4 获得 4 个点数,因此 3 也被删除。之后,删除 2 获得 2 个点...原创 2021-05-05 10:04:02 · 155 阅读 · 0 评论 -
LeetCode(1473. 粉刷房子 III)
LeetCode(1473. 粉刷房子 III)题目描述:在一个小城市里,有m个房子排成一排,你需要给每个房子涂上 n种颜色之一(颜色编号为 1 到 n)。有的房子去年夏天已经涂过颜色了,所以这些房子不需要被重新涂色。我们将连续相同颜色尽可能多的房子称为一个街区。(比方说 houses = [1,2,2,3,3,2,1,1] ,它包含 5 个街区[{1}, {2,2}, {3,3}, {2}, {1,1}] 。)给你一个数组houses,一个m * n的矩阵cost...原创 2021-05-04 15:01:25 · 178 阅读 · 0 评论 -
LeetCode(690. 员工的重要性)
LeetCode(690. 员工的重要性)给定一个保存员工信息的数据结构,它包含了员工唯一的 id,重要度和直系下属的 id。比如,员工 1 是员工 2 的领导,员工 2 是员工 3 的领导。他们相应的重要度为 15 , 10 , 5 。那么员工 1 的数据结构是 [1, 15, [2]] ,员工 2的 数据结构是 [2, 10, [3]] ,员工 3 的数据结构是 [3, 5, []] 。注意虽然员工 3 也是员工 1 的一个下属,但是由于并不是直系下属,因此没有体现在员工 1 的...原创 2021-05-01 09:56:09 · 134 阅读 · 0 评论 -
WhaleLeetcode学习群Week_2(19、213)
WhaleLeetcode学习群Week_2(19、213)19. 删除链表的倒数第 N 个结点给你一个链表,删除链表的倒数第n个结点,并且返回链表的头结点。进阶:你能尝试使用一趟扫描实现吗?示例 1:输入:head = [1,2,3,4,5], n = 2输出:[1,2,3,5]示例 2:输入:head = [1], n = 1输出:[]示例 3:输入:head = [1,2], n = 1输出:[1]/** * Definition fo...原创 2021-04-15 07:37:28 · 72 阅读 · 0 评论 -
DW&LeetCode_day17(344、557)
DW&LeetCode_day17(344、557)写在前面:最后一天,两道题,打卡完结撒花!开源内容开源内容学习大纲344. 反转字符串class Solution: def reverseString(self, s: List[str]) -> None: """ Do not return anything, modify s in-place instead. """ .原创 2021-01-28 08:23:25 · 173 阅读 · 0 评论 -
DW&LeetCode_day16(237、238、292)
DW&LeetCode_day16(237、238、292)写在前面:窗外日光弹指过,席间花影坐前移。倒数第二天了么,好快,哎,十里坎坷半里平,一峰才送一峰迎开源内容开源内容目录DW&LeetCode_day16(237、238、292)写在前面:开源内容237. 删除链表中的节点238. 除自身以外数组的乘积292. Nim 游戏学习大纲237. 删除链表中的节点# Definition for singly-.原创 2021-01-28 08:13:32 · 155 阅读 · 2 评论 -
DW&LeetCode_day15(231、235、236)
DW&LeetCode_day15(231、235、236)写在前面:忘记打卡LeetCode的每日一题了,今天补上吧开源内容开源内容目录DW&LeetCode_day15(231、235、236)写在前面:开源内容学习大纲231. 2的幂题解:235. 二叉搜索树的最近公共祖先题解:236. 二叉树的最近公共祖先题解:学习大纲231. 2的幂题解:class Solution:...原创 2021-01-27 08:48:29 · 178 阅读 · 2 评论 -
DW&LeetCode_day14(215、217、230)
DW&LeetCode_day14(215、217、230)写在前面:昨天一直在看Spring,忘记打卡LeetCode的每日一题了,今天补上吧开源内容开源内容目录DW&LeetCode_day14(215、217、230)写在前面:开源内容学习大纲215. 数组中的第K个最大元素题解:217. 存在重复元素题解:230. 二叉搜索树中第K小的元素题解:学习大纲215. 数组中的第K个最大元素...原创 2021-01-25 08:14:40 · 244 阅读 · 2 评论 -
DW&LeetCode_day13(160、169、206)
DW&LeetCode_day13(160、169、206)写在前面:这个月是跟并查集杠上了吗,这个月学不会并查集不让走!开源内容开源内容学习大纲160. 相交链表题解:# Definition for singly-linked list.# class ListNode:# def __init__(self, x):# self.val = x# self.next = ...原创 2021-01-24 07:20:42 · 220 阅读 · 2 评论 -
DW&LeetCode_day12(146、148、155)
DW&LeetCode_day12(146、148、155)写在前面:俩题都不会写,先抄个题解理解一下,后面再改开源内容开源内容目录DW&LeetCode_day12(146、148、155)写在前面:开源内容学习大纲146. LRU 缓存机制题解:148. 排序链表题解:155. 最小栈题解:学习大纲146. LRU 缓存机制题解:这题还不会,先抄个题解放着。class L...原创 2021-01-22 09:28:55 · 269 阅读 · 4 评论 -
DW&LeetCode_day11(136、141、142)
DW&LeetCode_day11(136、141、142)写在前面:这个月是跟并查集杠上了吗,这个月学不会并查集不让走!开源内容开源内容目录DW&LeetCode_day11(136、141、142)写在前面:开源内容学习大纲136. 只出现一次的数字题解:Python位运算符141. 环形链表题解:142. 环形链表 II题解:学习大纲136. 只出现一次的数字题解:...原创 2021-01-21 20:55:23 · 271 阅读 · 0 评论 -
LeetCode(1489. 找到最小生成树里的关键边和伪关键边&&Python)
LeetCode(1489. 找到最小生成树里的关键边和伪关键边)给你一个 n个点的带权无向连通图,节点编号为 0到 n-1,同时还有一个数组 edges,其中 edges[i] = [fromi, toi, weighti]表示在fromi和toi节点之间有一条带权无向边。最小生成树(MST) 是给定图中边的一个子集,它连接了所有节点且没有环,而且这些边的权值和最小。请你找到给定图中最小生成树的所有关键边和伪关键边。如果从图中删去某条边,会导致最小生成树的权值和增加,那么我们...原创 2021-01-21 10:20:52 · 577 阅读 · 8 评论 -
DW&LeetCode_day10(121、122、124)
DW&LeetCode_day10(121、122、124)写在前面:转眼第十天了,已经写过三十多道题了,不错,继续加油!开源内容开源内容目录DW&LeetCode_day10(121、122、124)写在前面:开源内容学习大纲121. 买卖股票的最佳时机题解:122. 买卖股票的最佳时机 II题解:124. 二叉树中的最大路径和题解:学习大纲121. 买卖股票的最佳时机题解:以Leet..原创 2021-01-21 10:02:05 · 930 阅读 · 0 评论 -
LeetCode(628. 三个数的最大乘积)
LeetCode(628. 三个数的最大乘积)给定一个整型数组,在数组中找出由三个数组成的最大乘积,并输出这个乘积。示例 1:输入: [1,2,3]输出: 6示例 2:输入: [1,2,3,4]输出: 24注意:给定的整型数组长度范围是[3,104],数组中所有的元素范围是[-1000, 1000]。输入的数组中任意三个数的乘积不会超出32位有符号整数的范围。链接:题目链接题解:class Solution: def maximumProduct(s原创 2021-01-20 07:42:56 · 127 阅读 · 0 评论 -
DW&LeetCode_day9(88、89、104)
DW&LeetCode_day9(88、89、104)写在前面:第9天开始了,今天开始加油吧!开源内容开源内容目录DW&LeetCode_day9(88、89、104)写在前面:开源内容学习大纲88. 合并两个有序数组题解:89. 格雷编码题解:104. 二叉树的最大深度题解:学习大纲88. 合并两个有序数组给你两个有序整数数组nums1 和 nums2,请你将 nums2 合并到nums1...原创 2021-01-20 07:31:07 · 913 阅读 · 6 评论 -
LeetCode(1584. 连接所有点的最小费用)
LeetCode(1584. 连接所有点的最小费用)给你一个points数组,表示 2D 平面上的一些点,其中points[i] = [xi, yi]。连接点[xi, yi] 和点[xj, yj]的费用为它们之间的 曼哈顿距离:|xi - xj| + |yi - yj|,其中|val|表示val的绝对值。请你返回将所有点连接的最小总费用。只有任意两点之间 有且仅有一条简单路径时,才认为所有点都已连接。示例 1:输入:points = [[0,0],[2,2...原创 2021-01-19 12:50:56 · 270 阅读 · 0 评论 -
DW&LeetCode_day8(62、70、78)
DW&LeetCode_day7(62、70、78)写在前面:第8天开始了,今天开始加油吧!开源内容开源内容学习大纲62. 不同路径一个机器人位于一个 m x n网格的左上角 (起始点在下图中标记为 “Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。问总共有多少条不同的路径?示例 1:输入:m = 3, n = 7输出:28示...原创 2021-01-18 22:47:16 · 848 阅读 · 5 评论 -
LeetCode(721. 账户合并)
LeetCode(721. 账户合并)给定一个列表 accounts,每个元素 accounts[i]是一个字符串列表,其中第一个元素 accounts[i][0]是名称 (name),其余元素是 emails 表示该账户的邮箱地址。现在,我们想合并这些账户。如果两个账户都有一些共同的邮箱地址,则两个账户必定属于同一个人。请注意,即使两个账户具有相同的名称,它们也可能属于不同的人,因为人们可能具有相同的名称。一个人最初可以拥有任意数量的账户,但其所有账户都具有相同的名称。合并账户后,按以...原创 2021-01-18 10:15:31 · 506 阅读 · 3 评论 -
DW&LeetCode_day7(54、59、61)
DW&LeetCode_day7(54、59、61)写在前面:第7天开始了,今天开始加油吧!开源内容开源内容目录DW&LeetCode_day7(54、59、61)写在前面:开源内容学习大纲54. 螺旋矩阵题解:59. 螺旋矩阵 II题解:61. 旋转链表题解:学习大纲54. 螺旋矩阵给定一个包含m x n个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素。示例...原创 2021-01-18 09:49:41 · 385 阅读 · 0 评论 -
LeetCode(1232. 缀点成线)
LeetCode(1232. 缀点成线)在一个XY 坐标系中有一些点,我们用数组coordinates来分别记录它们的坐标,其中coordinates[i] = [x, y]表示横坐标为 x、纵坐标为 y的点。请你来判断,这些点是否在该坐标系中属于同一条直线上,是则返回 true,否则请返回 false。示例 1:输入:coordinates = [[1,2],[2,3],[3,4],[4,5],[5,6],[6,7]]输出:true示例 2:输入:coordi...原创 2021-01-17 20:48:32 · 153 阅读 · 0 评论 -
DW&LeetCode_day6(43、46、53)
DW&LeetCode_day6(43、46、53)写在前面:第六天了,今天也开始加油吧!开源内容开源内容目录DW&LeetCode_day6(43、46、53)写在前面:开源内容目录学习大纲43. 字符串相乘题解:46. 全排列题解:53. 最大子序和学习大纲43. 字符串相乘给定两个以字符串形式表示的非负整数num1和num2,返回num1和num2的乘积,它们的乘积...原创 2021-01-17 18:19:02 · 193 阅读 · 0 评论 -
DW&LeetCode_day5(23、26、33)
DW&LeetCode_day5(23、26、33)写在前面:说一下这段时间的一些感受,就当成是树洞吧,这段时间来,每天都做着一样的事情,刷题、学英语、改bug、写设计。其实日子并没有这么平淡,是我太无趣了。开源内容开源内容目录DW&LeetCode_day5(23、26、33)写在前面:开源内容学习大纲23. 合并K个升序链表题解:26. 删除排序数组中的重复项题解:33. 搜索旋转排序数组题解:学习大纲...原创 2021-01-16 13:02:25 · 419 阅读 · 2 评论 -
LeetCode每日一题(947. 移除最多的同行或同列石头)
947. 移除最多的同行或同列石头n 块石头放置在二维平面中的一些整数坐标点上。每个坐标点上最多只能有一块石头。如果一块石头的 同行或者同列 上有其他石头存在,那么就可以移除这块石头。给你一个长度为 n 的数组 stones ,其中 stones[i] = [xi, yi] 表示第 i 块石头的位置,返回 可以移除的石子 的最大数量。示例 1:输入:stones = [[0,0],[0,1],[1,0],[1,2],[2,1],[2,2]]输出:5解释:一种移除 5 块石头的方原创 2021-01-15 10:01:16 · 146 阅读 · 0 评论 -
DW&LeetCode_day4(1018、16、20、21)
DW&LeetCode_day4(1018、16、20、21)写在前面:开始第4天的内容啦!各位小伙伴加油哦!开源内容开源内容学习大纲目录DW&LeetCode_day4(1018、16、20、21)写在前面:开源内容学习大纲1018. 可被 5 整除的二进制前缀题解:16. 最接近的三数之和题解:20. 有效的括号题解:21. 合并两个有序链表题解:1018. 可被 5 整除的二进制前缀给定由..原创 2021-01-14 07:51:36 · 447 阅读 · 0 评论 -
DW&LeetCode_day3(11、14、15)
DW&LeetCode_day3(11、14、15)写在前面:开始第三天的内容啦!各位小伙伴加油哦!开源内容开源内容学习大纲目录DW&LeetCode_day3(11、14、15)写在前面:开源内容学习大纲11. 盛最多水的容器题解:14. 最长公共前缀题解:15. 三数之和题解:11. 盛最多水的容器给你 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点(i,ai) 。在坐标...原创 2021-01-13 14:33:04 · 418 阅读 · 0 评论 -
DW&LeetCode_day2(7、8、9)
DW&LeetCode_day2(7、8、9)写在前面:第一天的内容已经打卡完成,看到大家的新思路,突然就清晰了,开始第二天的内容啦!各位小伙伴加油哦!开源内容开源内容学习大纲目录DW&LeetCode_day2(7、8、9)写在前面:开源内容学习大纲7. 整数反转python 的位运算符:python 赋值运算符:8. 字符串转换整数 (atoi)解释正则表达式9. 回文数写在最后:20...原创 2021-01-12 06:26:20 · 472 阅读 · 1 评论 -
DW&LeetCode_day1(2、4、5)
DW&LeetCode_day1(2、4、5)写在前面:从今天开始,和大家一起开始第21期的打卡学习啦,目标:坚持下来,加油!开源内容开源内容学习大纲20天,每天平均花费时间2小时-5小时不等,根据个人学习接受能力强弱有所浮动。2.两数相加给你两个非空 的链表,表示两个非负的整数。它们每位数字都是按照逆序的方式存储的,并且每个节点只能存储一位数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数...原创 2021-01-11 11:25:57 · 456 阅读 · 0 评论 -
力扣118.杨辉三角(Python&GO)
力扣118.杨辉三角给定一个非负整数numRows,生成杨辉三角的前numRows行。在杨辉三角中,每个数是它左上方和右上方的数的和。示例:输入: 5输出:[ [1], [1,1], [1,2,1], [1,3,3,1], [1,4,6,4,1]]题解:class Solution: def generate(self, n: int) -> List[List[int]]: return [[comb...原创 2020-12-06 09:43:18 · 671 阅读 · 5 评论 -
力扣7.整数反转
整数反转给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转示例 1:输入: 123输出: 321示例 2:输入: -123输出: -321示例 3:输入: 120输出: 21题解: sign = x >= 0 # x正负 maxInt32 = (1 << 31) - 1 # 准备int32最大值 res = 0 .原创 2020-12-05 22:51:14 · 288 阅读 · 8 评论 -
力扣621.任务调度器
任务调度器给你一个用字符数组tasks 表示的 CPU 需要执行的任务列表。其中每个字母表示一种不同种类的任务。任务可以以任意顺序执行,并且每个任务都可以在 1 个单位时间内执行完。在任何一个单位时间,CPU 可以完成一个任务,或者处于待命状态。然而,两个 相同种类 的任务之间必须有长度为整数 n 的冷却时间,因此至少有连续 n 个单位时间内 CPU 在执行不同的任务,或者在待命状态。你需要计算完成所有任务所需要的 最短时间 。示例 1:输入:tasks = ["A","...原创 2020-12-05 09:03:33 · 365 阅读 · 0 评论 -
力扣659.分割数组为连续子序列
力扣659.分割数组为连续子序列给你一个按升序排序的整数数组 num(可能包含重复数字),请你将它们分割成一个或多个子序列,其中每个子序列都由连续整数组成且长度至少为 3 。如果可以完成上述分割,则返回 true ;否则,返回 false 。贪心算法:和打扑克牌一样,如果可以接上下一个序列,就顺序添加当前的这个值,如果不是则从头插入继续进行,最后比较是否所有序列长度大于等于3。解法 时间复杂度 空间复杂度 执行用时 Ans 1 (Python) O ( N l..原创 2020-12-04 22:01:39 · 208 阅读 · 0 评论