LeetCode专栏
文章平均质量分 85
XiaoXiaoChen-2716
计科的小菜鸟
展开
-
『LeetCode|每日一题』---->打家劫舍||
你是一个专业的小偷,计划偷窃沿街的房屋,每间房内都藏有一定的现金。这个地方所有的房屋都 围成一圈 ,这意味着第一个房屋和最后一个房屋是紧挨着的。同时,相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警 。给定一个代表每个房屋存放金额的非负整数数组,计算你 在不触动警报装置的情况下 ,今晚能够偷窃到的最高金额。原创 2022-11-28 20:16:57 · 528 阅读 · 1 评论 -
『LeetCode|每日一题』---->最小路径和
给定一个包含非负整数的 m x n 网格 grid ,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。说明:每次只能向下或者向右移动一步。原创 2022-11-27 20:32:25 · 502 阅读 · 0 评论 -
『LeetCode|每日一题』---->颜色填充
编写函数,实现许多图片编辑软件都支持的「颜色填充」功能。待填充的图像用二维数组 image 表示,元素为初始颜色值。初始坐标点的行坐标为 sr 列坐标为 sc。需要填充的新颜色为 newColor 。「周围区域」是指颜色相同且在上、下、左、右四个方向上存在相连情况的若干元素。请用新颜色填充初始坐标点的周围区域,并返回填充后的图像。原创 2022-11-15 18:04:08 · 587 阅读 · 0 评论 -
『LeetCode|每日一题』---->按摩师
一个有名的按摩师会收到源源不断的预约请求,每个预约都可以选择接或不接。在每次预约服务之间要有休息时间,因此她不能接受相邻的预约。给定一个预约请求序列,替按摩师找到最优的预约集合(总预约时间最长),返回总的分钟数。原创 2022-11-14 22:03:05 · 378 阅读 · 0 评论 -
『LeetCode|每日一题』---->迷路的机器人
设想有个机器人坐在一个网格的左上角,网格 r 行 c 列。机器人只能向下或向右移动,但不能走到一些被禁止的网格(有障碍物)。设计一种算法,寻找机器人从左上角移动到右下角的路径。原创 2022-11-13 11:35:29 · 355 阅读 · 0 评论 -
『LeetCode|每日一题』---->三数之和
给你一个整数数组 nums ,判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i != j、i != k 且 j != k ,同时还满足 nums[i] + nums[j] + nums[k] == 0 。请你返回所有和为 0 且不重复的三元组。注意:答案中不可以包含重复的三元组。原创 2022-11-12 09:57:47 · 329 阅读 · 0 评论 -
『LeetCode|每日一题』---->二叉树剪枝
给定一个二叉树 根节点root,树的每个节点的值要么是 0,要么是 1。请剪除该二叉树中所有节点的值为 0 的子树。原创 2022-10-27 23:14:14 · 424 阅读 · 0 评论 -
『LeetCode|每日一题』---->最短的桥
给你一个大小为 n x n 的二元矩阵 grid ,其中 1 表示陆地,0 表示水域。岛 是由四面相连的 1 形成的一个最大组,即不会与非组内的任何其他 1 相连。grid 中 恰好存在两座岛 。你可以将任意数量的 0 变为 1 ,以使两座岛连接起来,变成 一座岛 。返回必须翻转的 0 的最小数目原创 2022-10-25 16:29:49 · 327 阅读 · 0 评论 -
『LeetCode|每日一题』---->搜索旋转排序数组
整数数组 nums 按升序排列,数组中的值 互不相同 。在传递给函数之前,nums 在预先未知的某个下标 k(0原创 2022-10-18 14:48:17 · 225 阅读 · 0 评论 -
『LeetCode|每日一题』---->二叉搜索树中第K小的元素
给定一个二叉搜索树的根节点 root ,和一个整数 k ,请你设计一个算法查找其中第 k 个最小元素(从 1 开始计数)。原创 2022-10-11 14:17:31 · 368 阅读 · 0 评论 -
『LeetCode|每日一题』---->二叉树的右视图
给定一个二叉树的 根节点 root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。原创 2022-10-10 20:51:02 · 242 阅读 · 0 评论 -
『LeetCode|每日一题』---->移除无效的括号
给你一个由 '('、')' 和小写字母组成的字符串 s。你需要从字符串中删除最少数目的 '(' 或者 ')'(可以删除任意位置的括号),使得剩下的「括号字符串」有效。请返回任意一个合法字符串。有效「括号字符串」应当符合以下任意一条要求:空字符串或只包含小写字母的字符串可以被写作AB(A连接B)的字符串,其中A和B都是有效「括号字符串」可以被写作(A)的字符串,其中A是一个有效的「括号字符串」原创 2022-10-08 23:25:57 · 151 阅读 · 0 评论 -
『LeetCode|每日一题』---->链表求和
给定两个用链表表示的整数,每个节点包含一个数位。这些数位是反向存放的,也就是个位排在链表首部。编写函数对这两个整数求和,并用链表形式返回结果。原创 2022-10-07 20:19:24 · 507 阅读 · 0 评论 -
『LeetCode|每日一题』---->两两交换链表中的节点
给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。原创 2022-10-06 18:31:37 · 506 阅读 · 0 评论 -
『LeetCode|每日一题』---->最长回文子串
给你一个字符串 s,找到 s 中最长的回文子串。原创 2022-10-05 19:48:29 · 491 阅读 · 0 评论 -
『LeetCode|每日一题』---->使括号有效的最少添加
只有满足下面几点之一,括号字符串才是有效的:它是一个空字符串,或者它可以被写成AB(A与B连接), 其中A 和B都是有效字符串,或者它可以被写作(A),其中A是有效字符串。给定一个括号字符串 s ,移动N次,你就可以在字符串的任何位置插入一个括号。例如,如果 s = "()))" ,你可以插入一个开始括号为 "(()))" 或结束括号为 "())))" 。返回 为使结果字符串 s 有效而必须添加的最少括号数。原创 2022-10-04 21:12:24 · 527 阅读 · 0 评论 -
『LeetCode|每日一题』---->递增的三元子序列
给你一个整数数组nums ,判断这个数组中是否存在长度为 3 的递增子序列。如果存在这样的三元组下标 (i, j, k)且满足 i < j < k ,使得nums[i] < nums[j] < nums[k] ,返回 true ;否则,返回 false 。原创 2022-09-29 20:54:18 · 240 阅读 · 0 评论 -
『LeetCode|每日一题』---->小行星碰撞
给定一个整数数组 asteroids,表示在同一行的小行星。对于数组中的每一个元素,其绝对值表示小行星的大小,正负表示小行星的移动方向(正表示向右移动,负表示向左移动)。每一颗小行星以相同的速度移动。找出碰撞后剩下的所有小行星。碰撞规则:两个行星相互碰撞,较小的行星会爆炸。如果两颗行星大小相同,则两颗行星都会爆炸。两颗移动方向相同的行星,永远不会发生碰撞。原创 2022-09-07 19:53:06 · 635 阅读 · 0 评论 -
『LeetCode|每日一题』---->旋转矩阵
给你一幅由 N × N 矩阵表示的图像,其中每个像素的大小为 4 字节。请你设计一种算法,将图像旋转 90 度。不占用额外内存空间能否做到?原创 2022-09-06 21:33:03 · 628 阅读 · 0 评论 -
『LeetCode|每日一题』---->斐波那契数&&第N个泰波那契数
斐波那契数--F(n) = F(n - 1) + F(n - 2)第N个泰波那契数--T0 = 0, T1 = 1, T2 = 1, 且在 n >= 0 的条件下 Tn+3 = Tn + Tn+1 + Tn+2原创 2022-09-03 11:29:50 · 210 阅读 · 1 评论 -
『LeetCode|每日一题』---->面试题 04.06. 后继者
设计一个算法,找出二叉搜索树中指定节点的“下一个”节点(也即中序后继)。如果指定节点没有对应的“下一个”节点,则返回null。原创 2022-08-31 17:26:28 · 95 阅读 · 0 评论 -
『LeetCode|每日一题』---->整数替换
给定一个正整数n ,你可以做如下操作:如果n是偶数,则用n / 2替换n 。如果n是奇数,则可以用n + 1或n - 1替换n 。返回 n变为 1 所需的 最小替换次数 。原创 2022-08-30 19:08:59 · 250 阅读 · 0 评论 -
『LeetCode|每日一题』---->打家劫舍
你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。给定一个代表每个房屋存放金额的非负整数数组,计算你 不触动警报装置的情况下 ,一夜之内能够偷窃到的最高金额。...原创 2022-08-29 19:35:05 · 182 阅读 · 0 评论 -
『LeetCode|每日一题』---->多数元素
给定一个大小为 n 的数组nums ,返回其中的多数元素。多数元素是指在数组中出现次数 大于⌊ n/2 ⌋的元素。你可以假设数组是非空的,并且给定的数组总是存在多数元素。原创 2022-08-28 09:21:28 · 294 阅读 · 0 评论 -
『LeetCode|每日一题』---->完全二叉树的节点个数
给你一棵 完全二叉树 的根节点 root ,求出该树的节点个数。完全二叉树 的定义如下:在完全二叉树中,除了最底层节点可能没填满外,其余每层节点数都达到最大值,并且最下面一层的节点都集中在该层最左边的若干位置。若最底层为第 h 层,则该层包含 1~2h个节点。...原创 2022-08-26 09:35:41 · 171 阅读 · 0 评论 -
『LeetCode|每日一题』---->数组中和为0的三个数
给定一个包含 n 个整数的数组nums,判断nums中是否存在三个元素a ,b ,c ,使得a + b + c = 0 ?请找出所有和为 0 且不重复的三元组。原创 2022-08-25 09:12:26 · 327 阅读 · 0 评论 -
『LeetCode|每日一题』---->从前序与中序遍历序列构造二叉树
给定两个整数数组preorder 和 inorder,其中preorder 是二叉树的先序遍历, inorder是同一棵树的中序遍历,请构造二叉树并返回其根节点。原创 2022-08-22 22:43:41 · 419 阅读 · 0 评论 -
『LeetCode|每日一题』---->柠檬水找零
在柠檬水摊上,每一杯柠檬水的售价为5美元。顾客排队购买你的产品,(按账单 bills 支付的顺序)一次购买一杯。每位顾客只买一杯柠檬水,然后向你付 5 美元、10 美元或 20 美元。你必须给每个顾客正确找零,也就是说净交易是每位顾客向你支付 5 美元。注意,一开始你手头没有任何零钱。给你一个整数数组 bills ,其中 bills[i] 是第 i 位顾客付的账。如果你能给每位顾客正确找零,返回true,否则返回 false。原创 2022-08-21 16:04:13 · 319 阅读 · 0 评论 -
『LeetCode|每日一题』---->最小栈
设计一个支持 push ,pop ,top 操作,并能在常数时间内检索到最小元素的栈。实现 MinStack 类:MinStack() 初始化堆栈对象。void push(int val) 将元素val推入堆栈。void pop() 删除堆栈顶部的元素。int top() 获取堆栈顶部的元素。int getMin() 获取堆栈中的最小元素。原创 2022-08-20 09:37:30 · 177 阅读 · 0 评论 -
『LeetCode|每日一题』---->连续数列
给定一个整数数组,找出总和最大的连续数列,并返回总和。原创 2022-08-19 14:28:12 · 180 阅读 · 0 评论 -
『LeetCode|每日一题』---->最长公共子序列
给定两个字符串text1 和text2,返回这两个字符串的最长 公共子序列 的长度。如果不存在 公共子序列 ,返回 0 。一个字符串的子序列是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。例如,"ace" 是 "abcde" 的子序列,但 "aec" 不是 "abcde" 的子序列。两个字符串的 公共子序列 是这两个字符串所共同拥有的子序列。...原创 2022-08-18 21:17:10 · 202 阅读 · 0 评论 -
『LeetCode|每日一题』---->最长递增子序列
给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。子序列是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7] 是数组 [0,3,1,6,2,2,7] 的子序列。...原创 2022-08-17 10:27:43 · 77 阅读 · 0 评论 -
『LeetCode|每日一题』---->解码方法
一条包含字母 A-Z 的消息通过以下映射进行了 编码 :'A' -> "1" 'B' -> "2" ... 'Z' -> "26",要 解码 已编码的消息,所有数字必须基于上述映射的方法,反向映射回字母(可能有多种方法)。注意,消息不能分组为 (1 11 06) ,因为 "06" 不能映射为 "F" ,这是由于 "6" 和 "06" 在映射中并不等价。给你一个只含数字的 非空 字符串 s ,请计算并返回 解码 方法的 总数 。题目数据保证答案肯定是一个 32 位 的整数。...原创 2022-08-16 11:16:18 · 487 阅读 · 0 评论 -
『LeetCode|每日一题』---->等差数列划分
如果一个数列 至少有三个元素 ,并且任意两个相邻元素之差相同,则称该数列为等差数列。例如,[1,3,5,7,9]、[7,7,7,7] 和 [3,-1,-5,-9] 都是等差数列。给你一个整数数组 nums ,返回数组 nums 中所有为等差数组的 子数组 个数。子数组 是数组中的一个连续序列。...原创 2022-08-15 16:58:28 · 157 阅读 · 0 评论 -
『LeetCode|每日一题』---->不同路径
一个机器人位于一个 m x n网格的左上角 (起始点在下图中标记为 “Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。问总共有多少条不同的路径?...原创 2022-08-14 21:32:14 · 100 阅读 · 0 评论 -
『LeetCode|每日一题』---->跳跃游戏
给定一个非负整数数组 nums ,你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个下标。原创 2022-08-13 21:06:26 · 722 阅读 · 0 评论 -
『LeetCode|每日一题』---->括号生成
数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。原创 2022-08-12 10:08:07 · 131 阅读 · 0 评论 -
『LeetCode|每日一题』---->组合总和
给你一个 无重复元素 的整数数组candidates 和一个目标整数target,找出candidates中可以使数字和为目标数target 的 所有不同组合 ,并以列表形式返回。你可以按 任意顺序 返回这些组合。candidates 中的 同一个 数字可以 无限制重复被选取 。如果至少一个数字的被选数量不同,则两种组合是不同的。对于给定的输入,保证和为target 的不同组合数少于 150 个。...原创 2022-08-11 14:54:55 · 59 阅读 · 0 评论 -
『LeetCode|每日一题』---->子集
给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)。解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。原创 2022-08-10 22:22:49 · 69 阅读 · 0 评论 -
『LeetCode|每日一题』---->股票的最大利润
假设把某股票的价格按照时间先后顺序存储在数组中,请问买卖该股票一次可能获得的最大利润是多少?原创 2022-08-09 09:39:19 · 395 阅读 · 0 评论