自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 收藏
  • 关注

原创 leetcode 841. 钥匙和房间

leetcode 841. 钥匙和房间题目详情题目链接有 N 个房间,开始时你位于 0 号房间。每个房间有不同的号码:0,1,2,…,N-1,并且房间里可能有一些钥匙能使你进入下一个房间。在形式上,对于每个房间 i 都有一个钥匙列表 rooms[i],每个钥匙 rooms[i][j] 由 [0,1,…,N-1] 中的一个整数表示,其中 N = rooms.length。 钥匙 rooms[i][j] = v 可以打开编号为 v 的房间。最初,除 0 号房间外的其余所有房间都被锁住。你可以自由地

2020-08-31 23:35:01 125

原创 leetcode 557. 反转字符串中的单词 III

leetcode 557. 反转字符串中的单词 III题目详情题目链接给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。示例:输入:"Let’s take LeetCode contest"输出:“s’teL ekat edoCteeL tsetnoc”提示:在字符串中,每个单词由单个空格分隔,并且字符串中不会有任何额外的空格。我的代码class Solution {public: string reverseWords(strin

2020-08-30 09:29:32 76

原创 leetcode 214. 最短回文串

leetcode 214. 最短回文串题目详情题目链接给定一个字符串 s,你可以通过在字符串前面添加字符将其转换为回文串。找到并返回可以用这种方式转换的最短回文串。示例 1:输入: “aacecaaa”输出: “aaacecaaa”示例 2:输入: “abcd”输出: “dcbabcd”我的代码class Solution {public: bool isPalindrome(const string &s, int len) { int left

2020-08-29 19:06:22 92

原创 leetcode 657. 机器人能否返回原点

leetcode 657. 机器人能否返回原点题目详情题目链接在二维平面上,有一个机器人从原点 (0, 0) 开始。给出它的移动顺序,判断这个机器人在完成移动后是否在 (0, 0) 处结束。移动顺序由字符串表示。字符 move[i] 表示其第 i 次移动。机器人的有效动作有 R(右),L(左),U(上)和 D(下)。如果机器人在完成所有动作后返回原点,则返回 true。否则,返回 false。注意:机器人“面朝”的方向无关紧要。 “R” 将始终使机器人向右移动一次,“L” 将始终向左移动等。此外

2020-08-28 17:52:02 175

原创 leetcode 332. 重新安排行程

leetcode 332. 重新安排行程题目详情题目链接给定一个机票的字符串二维数组 [from, to],子数组中的两个成员分别表示飞机出发和降落的机场地点,对该行程进行重新规划排序。所有这些机票都属于一个从 JFK(肯尼迪国际机场)出发的先生,所以该行程必须从 JFK 开始。说明:如果存在多种有效的行程,你可以按字符自然排序返回最小的行程组合。例如,行程 [“JFK”, “LGA”] 与 [“JFK”, “LGB”] 相比就更小,排序更靠前所有的机场都用三个大写字母表示(机场代码)。假

2020-08-27 18:54:59 78

原创 leetcode 17. 电话号码的字母组合

leetcode 17. 电话号码的字母组合题目详情题目链接给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。示例:输入:“23”输出:[“ad”, “ae”, “af”, “bd”, “be”, “bf”, “cd”, “ce”, “cf”].说明:尽管上面的答案是按字典序排列的,但是你可以任意选择答案输出的顺序。我的代码class Solution {private: ve

2020-08-26 08:34:04 74

原创 leetcode 491. 递增子序列

leetcode 491. 递增子序列题目详情题目链接给定一个整型数组, 你的任务是找到所有该数组的递增子序列,递增子序列的长度至少是2。示例:输入: [4, 6, 7, 7]输出: [[4, 6], [4, 7], [4, 6, 7], [4, 6, 7, 7], [6, 7], [6, 7, 7], [7,7], [4,7,7]]说明:给定数组的长度不会超过15。数组中的整数范围是 [-100,100]。给定数组中可能包含重复数字,相等的数字应该被视为递增的一种情况。我

2020-08-25 23:00:38 121

原创 leetcode 459. 重复的子字符串

leetcode 459. 重复的子字符串题目详情题目链接给定一个非空的字符串,判断它是否可以由它的一个子串重复多次构成。给定的字符串只含有小写英文字母,并且长度不超过10000。示例 1:输入: “abab”输出: True解释: 可由子字符串 “ab” 重复两次构成。示例 2:输入: “aba”输出: False示例 3:输入: “abcabcabcabc”输出: True解释: 可由子字符串 “abc” 重复四次构成。 (或者子字符串 “abcabc” 重复两次构成。)

2020-08-24 09:32:28 61

原创 leetcode 201. 数字范围按位与

leetcode 201. 数字范围按位与题目详情题目链接给定范围 [m, n],其中 0 <= m <= n <= 2147483647,返回此范围内所有数字的按位与(包含 m, n 两端点)。示例 1:输入: [5,7]输出: 4示例 2:输入: [0,1]输出: 0我的代码class Solution {public: int rangeBitwiseAnd(int m, int n) { if (m == 0) {

2020-08-23 10:11:58 76

原创 leetcode 679. 24 点游戏

leetcode 679. 24 点游戏题目详情题目链接你有 4 张写有 1 到 9 数字的牌。你需要判断是否能通过 *,/,+,-,(,) 的运算得到 24。示例 1:输入: [4, 1, 8, 7]输出: True解释: (8-4) * (7-1) = 24示例 2:输入: [1, 2, 1, 2]输出: False注意:除法运算符 / 表示实数除法,而不是整数除法。例如 4 / (1 - 2/3) = 12 。每个运算符对两个数进行运算。特别是我们不能用 - 作为一元

2020-08-22 21:17:45 99

原创 leetcode 111. 二叉树的最小深度

leetcode 111. 二叉树的最小深度题目详情题目链接给定一个二叉树,找出其最小深度。最小深度是从根节点到最近叶子节点的最短路径上的节点数量。说明: 叶子节点是指没有子节点的节点。示例:给定二叉树 [3,9,20,null,null,15,7],3/ 9 20/ 15 7返回它的最小深度 2.我的代码/** * Definition for a binary tree node. * struct TreeNode { * int val;

2020-08-21 20:18:01 60

原创 leetcode 529. 扫雷游戏

leetcode 529. 扫雷游戏题目详情题目链接让我们一起来玩扫雷游戏!给定一个代表游戏板的二维字符矩阵。 ‘M’ 代表一个未挖出的地雷,‘E’ 代表一个未挖出的空方块,‘B’ 代表没有相邻(上,下,左,右,和所有4个对角线)地雷的已挖出的空白方块,数字(‘1’ 到 ‘8’)表示有多少地雷与这块已挖出的方块相邻,‘X’ 则表示一个已挖出的地雷。现在给出在所有未挖出的方块中(‘M’或者’E’)的下一个点击位置(行和列索引),根据以下规则,返回相应位置被点击后对应的面板:如果一个地雷(‘M’

2020-08-20 13:56:47 111

原创 leetcode 647. 回文子串

leetcode 647. 回文子串题目详情题目链接给定一个字符串,你的任务是计算这个字符串中有多少个回文子串。具有不同开始位置或结束位置的子串,即使是由相同的字符组成,也会被视作不同的子串。示例 1:输入:“abc”输出:3解释:三个回文子串: “a”, “b”, “c”示例 2:输入:“aaa”输出:6解释:6个回文子串: “a”, “a”, “a”, “aa”, “aa”, “aaa”提示:输入的字符串长度不会超过 1000 。我的代码class Solut

2020-08-19 10:00:31 96

原创 leetcode 109. 有序链表转换二叉搜索树

leetcode 109. 有序链表转换二叉搜索树题目详情题目链接给定一个单链表,其中的元素按升序排序,将其转换为高度平衡的二叉搜索树。本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1。示例:给定的有序链表: [-10, -3, 0, 5, 9],一个可能的答案是:[0, -3, 9, -10, null, 5], 它可以表示下面这个高度平衡二叉搜索树:0/ \-3 9/ /-10 5我的代码/** * Definit

2020-08-18 09:05:51 78

原创 leetcode 110. 平衡二叉树

leetcode 110. 平衡二叉树题目详情题目链接给定一个二叉树,判断它是否是高度平衡的二叉树。本题中,一棵高度平衡二叉树定义为:一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过1。示例 1:给定二叉树 [3,9,20,null,null,15,7]3/ \9 20/ \15 7返回 true 。示例 2:给定二叉树 [1,2,2,3,3,null,null,4,4]1/ \2 2/ \3 3/ \4 4返回 false 。

2020-08-17 12:00:36 78

原创 leetcode 733. 图像渲染

leetcode 733. 图像渲染题目详情题目链接有一幅以二维整数数组表示的图画,每一个整数表示该图画的像素值大小,数值在 0 到 65535 之间。给你一个坐标 (sr, sc) 表示图像渲染开始的像素值(行 ,列)和一个新的颜色值 newColor,让你重新上色这幅图像。为了完成上色工作,从初始坐标开始,记录初始坐标的上下左右四个方向上像素值与初始坐标相同的相连像素点,接着再记录这四个方向上符合条件的像素点与他们对应四个方向上像素值与初始坐标相同的相连像素点,……,重复该过程。将所有有记录

2020-08-16 08:36:54 87

原创 leetcode 546. 移除盒子

leetcode 546. 移除盒子题目详情题目链接给出一些不同颜色的盒子,盒子的颜色由数字表示,即不同的数字表示不同的颜色。你将经过若干轮操作去去掉盒子,直到所有的盒子都去掉为止。每一轮你可以移除具有相同颜色的连续 k 个盒子(k >= 1),这样一轮之后你将得到 k*k 个积分。当你将所有盒子都去掉之后,求你能获得的最大积分和。示例:输入:boxes = [1,3,2,2,2,3,4,3,1]输出:23解释:[1, 3, 2, 2, 2, 3, 4, 3, 1]----&

2020-08-15 21:49:06 82

原创 leetcode 20. 有效的括号

leetcode 20. 有效的括号题目详情题目链接给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。示例 1:输入: “()”输出: true示例 2:输入: “()[]{}”输出: true示例 3:输入: “(]”输出: false示例 4:输入: “([)]”输出: false示例 5:输入:

2020-08-14 22:34:12 64

原创 leetcode 43. 字符串相乘

leetcode 43. 字符串相乘题目详情题目链接给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式。示例 1:输入: num1 = “2”, num2 = “3”输出: “6”示例 2:输入: num1 = “123”, num2 = “456”输出: “56088”说明:num1 和 num2 的长度小于110。num1 和 num2 只包含数字 0-9。num1 和 num2 均不以零开头,

2020-08-13 10:48:22 71

原创 leetcode 133. 克隆图

leetcode 133. 克隆图题目详情题目链接给你无向 连通 图中一个节点的引用,请你返回该图的 深拷贝(克隆)。图中的每个节点都包含它的值 val(int) 和其邻居的列表(list[Node])。class Node {public int val;public List neighbors;}测试用例格式:简单起见,每个节点的值都和它的索引相同。例如,第一个节点值为 1(val = 1),第二个节点值为 2(val = 2),以此类推。该图在测试用例中使用邻接列表表示。邻接

2020-08-12 19:11:32 113

原创 leetcode 130. 被围绕的区域

leetcode 130. 被围绕的区域题目详情题目链接给定一个二维的矩阵,包含 ‘X’ 和 ‘O’(字母 O)。找到所有被 ‘X’ 围绕的区域,并将这些区域里所有的 ‘O’ 用 ‘X’ 填充。示例:X X X XX O O XX X O XX O X X运行你的函数后,矩阵变为:X X X XX X X XX X X XX O X X解释:被围绕的区间不会存在于边界上,换句话说,任何边界上的 ‘O’ 都不会被填充为 ‘X’。 任何不在边界上,或不与边界上的 ‘O’ 相连

2020-08-11 23:24:30 81

原创 leetcode 696. 计数二进制子串

leetcode 696. 计数二进制子串题目详情题目链接给定一个字符串 s,计算具有相同数量0和1的非空(连续)子字符串的数量,并且这些子字符串中的所有0和所有1都是组合在一起的。重复出现的子串要计算它们出现的次数。示例 1 :输入: “00110011”输出: 6解释: 有6个子串具有相同数量的连续1和0:“0011”,“01”,“1100”,“10”,“0011” 和 “01”。请注意,一些重复出现的子串要计算它们出现的次数。另外,“00110011”不是有效的子串,因为所有的

2020-08-10 10:08:23 108

原创 leetcode 93. 复原IP地址

leetcode 93. 复原IP地址题目详情题目链接给定一个只包含数字的字符串,复原它并返回所有可能的 IP 地址格式。有效的 IP 地址正好由四个整数(每个整数位于 0 到 255 之间组成),整数之间用 ‘.’ 分隔。示例:输入: “25525511135”输出: [“255.255.11.135”, “255.255.111.35”]我的代码class Solution {private: vector<string> results;public:

2020-08-09 21:27:46 48

原创 leetcode 99. 恢复二叉搜索树

leetcode 99. 恢复二叉搜索树题目详情题目链接二叉搜索树中的两个节点被错误地交换。请在不改变其结构的情况下,恢复这棵树。示例 1:输入: [1,3,null,null,2]1/3\2输出: [3,1,null,null,2]3/1\2示例 2:输入: [3,1,4,null,null,2]3/ \1 4/2输出: [2,1,4,null,null,3]2/ \1 4/3进阶:使用 O(n) 空间复杂度的解法很容易实现。

2020-08-08 23:51:49 100

原创 leetcode 100. 相同的树

leetcode 100. 相同的树题目详情题目链接给定两个二叉树,编写一个函数来检验它们是否相同。如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。示例 1:输入:1 1/ \ / \2 3 2 3[1,2,3], [1,2,3]输出: true示例 2:输入:1 1/ \2 2[1,2], [1,null,2]输出: false示

2020-08-07 22:22:02 61

原创 leetcode 336. 回文对

leetcode 336. 回文对题目详情题目链接给定一组 互不相同 的单词, 找出所有不同 的索引对(i, j),使得列表中的两个单词, words[i] + words[j] ,可拼接成回文串。示例 1:输入:[“abcd”,“dcba”,“lls”,“s”,“sssll”]输出:[[0,1],[1,0],[3,2],[2,4]]解释:可拼接成的回文串为 [“dcbaabcd”,“abcddcba”,“slls”,“llssssll”]示例 2:输入:[“bat”,“tab”,“c

2020-08-06 17:57:19 90

原创 leetcode 337. 打家劫舍 III

leetcode 337. 打家劫舍 III题目详情题目链接在上次打劫完一条街道之后和一圈房屋后,小偷又发现了一个新的可行窃的地区。这个地区只有一个入口,我们称之为“根”。 除了“根”之外,每栋房子有且只有一个“父“房子与之相连。一番侦察之后,聪明的小偷意识到“这个地方的所有房屋的排列类似于一棵二叉树”。 如果两个直接相连的房子在同一天晚上被打劫,房屋将自动报警。计算在不触动警报的情况下,小偷一晚能够盗取的最高金额。示例 1:输入: [3,2,3,null,3,null,1]3/ 2

2020-08-05 12:25:13 62

原创 leetcode 207. 课程表

leetcode 207. 课程表题目详情题目链接你这个学期必须选修 numCourse 门课程,记为 0 到 numCourse-1 。在选修某些课程之前需要一些先修课程。 例如,想要学习课程 0 ,你需要先完成课程 1 ,我们用一个匹配来表示他们:[0,1]给定课程总量以及它们的先决条件,请你判断是否可能完成所有课程的学习?示例 1:输入: 2, [[1,0]]输出: true解释: 总共有 2 门课程。学习课程 1 之前,你需要完成课程 0。所以这是可能的。示例 2:输入:

2020-08-04 19:10:56 144

原创 leetcode 415. 字符串相加

leetcode 415. 字符串相加题目详情题目链接给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和。注意:num1 和num2 的长度都小于 5100.num1 和num2 都只包含数字 0-9.num1 和num2 都不包含任何前导零。你不能使用任何內建 BigInteger 库, 也不能直接将输入的字符串转换为整数形式。我的代码class Solution {public: string addStrings(string num1, stri

2020-08-03 17:22:55 90

原创 leetcode 114. 二叉树展开为链表

leetcode 114. 二叉树展开为链表题目详情题目链接给定一个二叉树,原地将它展开为一个单链表。例如,给定二叉树1/ \2 5/ \ \3 4 6将其展开为:1\2\3\4\5\6我的代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right;

2020-08-02 12:35:41 81

原创 leetcode 632. 最小区间

leetcode 632. 最小区间题目详情题目链接你有 k 个升序排列的整数数组。找到一个最小区间,使得 k 个列表中的每个列表至少有一个数包含在其中。我们定义如果 b-a < d-c 或者在 b-a == d-c 时 a < c,则区间 [a,b] 比 [c,d] 小。示例 1:输入:[[4,10,15,24,26], [0,9,12,20], [5,18,22,30]]输出: [20,24]解释:列表 1:[4, 10, 15, 24, 26],24 在区间 [20,

2020-08-01 11:17:52 94

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除