自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 (144)925. 长按键入(leetcode)

题目链接:https://leetcode-cn.com/problems/long-pressed-name/难度:简单925. 长按键入 你的朋友正在使用键盘输入他的名字 name。偶尔,在键入字符 c 时,按键可能会被长按,而字符可能被输入 1 次或多次。 你将会检查键盘输入的字符 typed。如果它对应的可能是你的朋友的名字(其中一些字符可能被长按),那么就返回 True。示例 1: 输入:name = "alex", typed = "aaleex" 输出:true 解释:'a

2020-10-21 15:24:42 6

原创 (143)143. 重排链表(leetcode)

题目链接:https://leetcode-cn.com/problems/reorder-list/难度:中等143. 重排链表 给定一个单链表 L:L0→L1→…→Ln-1→Ln , 将其重新排列后变为: L0→Ln→L1→Ln-1→L2→Ln-2→… 你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。示例 1: 给定链表 1->2->3->4, 重新排列为 1->4->2->3.示例 2: 给定链表 1->2->3-&gt

2020-10-21 15:09:43 4

原创 (140)52. N皇后 II(leetcode)*

N皇后 IIn 皇后问题研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。上图为 8 皇后问题的一种解法。给定一个整数 n,返回 n 皇后不同的解决方案的数量。class Solution {public: // 列 unordered_set<int> columns; // i+j unordered_set<int> diagonal1; // j-i unordered_set&l.

2020-10-21 15:07:11 5

原创 (142)844. 比较含退格的字符串(leetcode)

题目链接:https://leetcode-cn.com/problems/backspace-string-compare/难度:简单844. 比较含退格的字符串 给定 S 和 T 两个字符串,当它们分别被输入到空白的文本编辑器后,判断二者是否相等,并返回结果。 # 代表退格字符。 注意:如果对空文本输入退格字符,文本继续为空。示例 1: 输入:S = "ab#c", T = "ad#c" 输出:true 解释:S 和 T 都会变成 “ac”。示例 2: 输入:S = "ab##",

2020-10-19 11:04:17 4

原创 (141)19. 删除链表的倒数第N个节点(leetcode)

题目链接:https://leetcode-cn.com/problems/remove-nth-node-from-end-of-list/难度:中等19. 删除链表的倒数第N个节点给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。示例: 给定一个链表: 1->2->3->4->5, 和 n = 2. 当删除了倒数第二个节点后,链表变为 1->2->3->5.说明: 给定的 n 保证是有效的。进阶: 你能尝试使用一趟扫描实现吗

2020-10-18 13:35:58 3

原创 (139)977. 有序数组的平方(leetcode)

题目链接:https://leetcode-cn.com/problems/squares-of-a-sorted-array/难度:简单977. 有序数组的平方给定一个按非递减顺序排序的整数数组 A,返回每个数字的平方组成的新数组,要求也按非递减顺序排序。示例 1: 输入:[-4,-1,0,3,10] 输出:[0,1,9,16,100]示例 2: 输入:[-7,-3,2,3,11] 输出:[4,9,9,49,121]提示: 1 <= A.length <= 10000

2020-10-16 09:57:13 6

原创 (138)116. 填充每个节点的下一个右侧节点指针(leetcode)

题目链接:https://leetcode-cn.com/problems/populating-next-right-pointers-in-each-node/难度:中等116. 填充每个节点的下一个右侧节点指针 给定一个完美二叉树,其所有叶子节点都在同一层,每个父节点都有两个子节点。二叉树定义如下: struct Node { int val; Node *left; Node *right; Node *next; } 填充它的每个 next 指针,让这个指针指

2020-10-15 14:15:28 3

原创 (137)1002. 查找常用字符(leetcode)

题目链接:https://leetcode-cn.com/problems/find-common-characters/难度:简单1002. 查找常用字符 给定仅有小写字母组成的字符串数组 A,返回列表中的每个字符串中都显示的全部字符(包括重复字符)组成的列表。例如,如果一个字符在每个字符串中出现 3 次,但不是 4 次,则需要在最终答案中包含该字符 3 次。 你可以按任意顺序返回答案。示例 1: 输入:["bella","label","roller"] 输出:["e","l","l"

2020-10-14 10:12:36 9

原创 (136)24. 两两交换链表中的节点(leetcode)

题目链接:https://leetcode-cn.com/problems/swap-nodes-in-pairs/难度:中等24. 两两交换链表中的节点 给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。 你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。示例: 给定 1->2->3->4, 你应该返回 2->1->4->3.不算难 感觉归为简单题会更好一点 不过 相比来说我写的代码好垃圾 都是迭代 为何。。。这是自己写的

2020-10-13 10:00:36 12

原创 (135)530. 二叉搜索树的最小绝对差(leetcode)

题目链接:https://leetcode-cn.com/problems/minimum-absolute-difference-in-bst/难度:简单530. 二叉搜索树的最小绝对差 给你一棵所有节点为非负值的二叉搜索树,请你计算树中任意两节点的差的绝对值的最小值。示例: 输入: 1 \ 3 / 2输出: 1解释: 最小绝对差为 1,其中 2 和 1 的差的绝对值为 1(或者 2 和 3)。还行。。递归解法/** * Def

2020-10-12 10:08:42 9

原创 (134)416. 分割等和子集(leetcode)

题目链接:https://leetcode-cn.com/problems/partition-equal-subset-sum/难度:中等416. 分割等和子集 给定一个只包含正整数的非空数组。是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。 注意: 每个数组中的元素不会超过 100 数组的大小不会超过 200示例 1: 输入: [1, 5, 11, 5] 输出: true 解释: 数组可以分割成 [1, 5, 5] 和 [11].这个题 没做出来。。。原本的思路

2020-10-11 16:16:20 7

原创 (133)142. 环形链表 II(leetcode)

题目链接:https://leetcode-cn.com/problems/linked-list-cycle-ii/难度:中等142. 环形链表 II 给定一个链表,返回链表开始入环的第一个节点。 如果链表无环, 则返回 null。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。注意,pos 仅仅是用于标识环的情况,并不会作为参数传递到函数中。说明:不允许修改给定的链表。进阶: 你是否可以

2020-10-11 10:04:35 3

原创 (132)141. 环形链表(leetcode)

题目链接:https://leetcode-cn.com/problems/linked-list-cycle/难度:简单141. 环形链表 给定一个链表,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。注意:pos 不作为参数进行传递,仅仅是为了标识链表的实际情况。 如果链表中存在环,则

2020-10-09 09:36:15 5

原创 (131)剑指 Offer 43. 1~n整数中1出现的次数(leetcode)

题目链接:https://leetcode-cn.com/problems/1nzheng-shu-zhong-1chu-xian-de-ci-shu-lcof/难度:中等剑指 Offer 43. 1~n整数中1出现的次数 输入一个整数 n ,求1~n这n个整数的十进制表示中1出现的次数。 例如,输入12,1~12这些整数中包含1 的数字有1、10、11和12,1一共出现了5次。示例 1: 输入:n = 12 输出:5示例 2: 输入:n = 13 输出:6限制: 1 <=

2020-10-08 16:26:09 9

原创 (130)344. 反转字符串(leetcode)

题目链接:https://leetcode-cn.com/problems/reverse-string/难度:简单344. 反转字符串 编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。 不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。 你可以假设数组中的所有字符都是 ASCII 码表中的可打印字符。示例 1: 输入:["h","e","l","l","o"] 输出:["o","l","l","e

2020-10-08 09:19:58 7

原创 (129)445. 两数相加 II(leetcode)

题目链接:https://leetcode-cn.com/problems/add-two-numbers-ii/难度:中等445. 两数相加 II 给你两个 非空 链表来代表两个非负整数。数字最高位位于链表开始位置。它们的每个节点只存储一位数字。将这两数相加会返回一个新的链表。 你可以假设除了数字 0 之外,这两个数字都不会以零开头。进阶: 如果输入链表不能修改该如何处理?换句话说,你不能对列表中的节点进行翻转。示例: 输入:(7 -> 2 -> 4 -> 3) +

2020-10-07 19:42:12 5

原创 (128)75. 颜色分类(leetcode)

题目链接:https://leetcode-cn.com/problems/sort-colors/难度:中等75. 颜色分类 给定一个包含红色、白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。 此题中,我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。注意: 不能使用代码库中的排序函数来解决这道题。示例: 输入: [2,0,2,1,1,0] 输出: [0,0,1,1,2,2]进阶: 一个直观的解决方案是使用计数

2020-10-07 09:47:44 11

原创 (127)834. 树中距离之和(leetcode)

题目链接:https://leetcode-cn.com/problems/sum-of-distances-in-tree/难度:困难834. 树中距离之和 给定一个无向、连通的树。树中有 N 个标记为 0...N-1 的节点以及 N-1 条边 。 第 i 条边连接节点 edges[i][0] 和 edges[i][1] 。 返回一个表示节点 i 与其他所有节点距离之和的列表 ans。示例 1: 输入: N = 6, edges = [[0,1],[0,2],[2,3],[2,4],[2,

2020-10-06 10:48:50 17

原创 (126)15. 三数之和(leetcode)

题目链接:https://leetcode-cn.com/problems/3sum/难度:中等15. 三数之和 给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有满足条件且不重复的三元组。 注意:答案中不可以包含重复的三元组。示例: 给定数组 nums = [-1, 0, 1, 2, -1, -4], 满足要求的三元组集合为: [ [-1, 0, 1], [-1, -1, 2] ]

2020-10-05 20:06:49 7

原创 (125)18. 四数之和(leetcode)

题目链接:https://leetcode-cn.com/problems/4sum/难度:中等18. 四数之和 给定一个包含 n 个整数的数组 nums 和一个目标值 target,判断 nums 中是否存在四个元素 a,b,c 和 d ,使得 a + b + c + d 的值与 target 相等?找出所有满足条件且不重复的四元组。注意: 答案中不可以包含重复的四元组。示例: 给定数组 nums = [1, 0, -1, 0, -2, 2],和 target = 0。 满足要求的四元

2020-10-05 11:18:10 26

原创 (124)5531. 特殊数组的特征值(leetcode)

题目链接:https://leetcode-cn.com/problems/special-array-with-x-elements-greater-than-or-equal-x/难度:简单5531. 特殊数组的特征值 给你一个非负整数数组 nums 。如果存在一个数 x ,使得 nums 中恰好有 x 个元素 大于或者等于 x ,那么就称 nums 是一个 特殊数组 ,而 x 是该数组的 特征值 。 注意: x 不必 是 nums 的中的元素。 如果数组 nums 是一个 特殊数组 ,请返

2020-10-04 19:42:04 7

原创 (123)5516. 警告一小时内使用相同员工卡大于等于三次的人(leetcode)

题目链接:https://leetcode-cn.com/problems/alert-using-same-key-card-three-or-more-times-in-a-one-hour-period/难度:中等5516. 警告一小时内使用相同员工卡大于等于三次的人 力扣公司的员工都使用员工卡来开办公室的门。每当一个员工使用一次他的员工卡,安保系统会记录下员工的名字和使用时间。如果一个员工在一小时时间内使用员工卡的次数大于等于三次,这个系统会自动发布一个 警告 。 给你字符串数组 key

2020-10-04 11:04:38 30 1

原创 (107)685. 冗余连接 II(leetcode)

题目链接:https://leetcode-cn.com/problems/redundant-connection-ii/submissions/难度:困难685. 冗余连接 II 在本问题中,有根树指满足以下条件的有向图。该树只有一个根节点,所有其他节点都是该根节点的后继。每一个节点只有一个父节点,除了根节点没有父节点。 输入一个有向图,该图由一个有着N个节点 (节点值不重复1, 2, ..., N) 的树及一条附加的边构成。附加的边的两个顶点包含在1到N中间,这条附加的边不属于树中已存在的边

2020-10-03 10:52:36 14

原创 (122)771. 宝石与石头(leetcode)

题目链接: https://leetcode-cn.com/problems/jewels-and-stones/ 难度:简单 771. 宝石与石头 给定字符串J 代表石头中宝石的类型,和字符串 S代表你拥有的石头。 S 中每个字符代表了一种你拥有的石头的类型,你想知道你拥有的石头中有多少是宝石。 J 中的字母不重复,J 和 S中的所有字符都是字母。字母区分大小写,因此"a"和"A"是不同类型的石头。示例 1: 输入: J = "aA", S = "aAAbbbb" 输出: 3示例 .

2020-10-02 09:41:21 39

原创 (121)LCP 19. 秋叶收藏集(leetcode)

题目链接:https://leetcode-cn.com/problems/UlBDOe/难度:中等LCP 19. 秋叶收藏集 小扣出去秋游,途中收集了一些红叶和黄叶,他利用这些叶子初步整理了一份秋叶收藏集 leaves, 字符串 leaves 仅包含小写字符 r 和 y, 其中字符 r 表示一片红叶,字符 y 表示一片黄叶。 出于美观整齐的考虑,小扣想要将收藏集中树叶的排列调整成「红、黄、红」三部分。每部分树叶数量可以不相等,但均需大于等于 1。每次调整操作,小扣可以将一片红叶替换成黄叶或者

2020-10-01 11:20:53 17

原创 (120)701. 二叉搜索树中的插入操作(leetcode)

题目链接:https://leetcode-cn.com/problems/insert-into-a-binary-search-tree/难度:中等701. 二叉搜索树中的插入操作 给定二叉搜索树(BST)的根节点和要插入树中的值,将值插入二叉搜索树。 返回插入后二叉搜索树的根节点。 输入数据保证,新值和原始二叉搜索树中的任意节点值都不同。 注意,可能存在多种有效的插入方式,只要树在插入后仍保持为二叉搜索树即可。 你可以返回任意有效的结果。例如, 给定二叉搜索树: 4

2020-09-30 10:04:06 3

原创 (119)145. 二叉树的后序遍历

题目链接:https://leetcode-cn.com/problems/binary-tree-postorder-traversal/难度:中等145. 二叉树的后序遍历 给定一个二叉树,返回它的 后序 遍历。示例: 输入: [1,null,2,3] 1 \ 2 / 3 输出: [3,2,1] 进阶: 递归算法很简单,你可以通过迭代算法完成吗?递归多好。。。。。简单的不能再简单了/** * Definition for a

2020-09-29 09:48:20 6

原创 (118)117. 填充每个节点的下一个右侧节点指针 II(leetcode)

题目链接:https://leetcode-cn.com/problems/populating-next-right-pointers-in-each-node-ii/难度:中等117. 填充每个节点的下一个右侧节点指针 II 给定一个二叉树 struct Node { int val; Node *left; Node *right; Node *next; } 填充它的每个 next 指针,让这个指针指向其下一个右侧节点。如果找不到下一个右侧节点,则将 next

2020-09-28 10:09:49 54

原创 (114)2. 两数相加(leetcode)

106. 从中序与后序遍历序列构造二叉树 根据一棵树的中序遍历与后序遍历构造二叉树。注意: 你可以假设树中没有重复的元素。 例如,给出 中序遍历 inorder = [9,3,15,20,7] 后序遍历 postorder = [9,15,7,20,3] 返回如下的二叉树: 3 / \ 9 20 / \ 15 7...

2020-09-27 16:57:50 6

原创 (116)106. 从中序与后序遍历序列构造二叉树(leetcode)*

(114)

2020-09-27 16:22:42 3

原创 (117)235. 二叉搜索树的最近公共祖先(leetcode)

题目链接:https://leetcode-cn.com/problems/lowest-common-ancestor-of-a-binary-search-tree/难度:简单235. 二叉搜索树的最近公共祖先 给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。” 例如,给定如下二叉搜索树:

2020-09-27 10:27:32 49

原创 (115)113. 路径总和 II(leetcode)

题目链接:https://leetcode-cn.com/problems/path-sum-ii/难度:中等113. 路径总和 II 给定一个二叉树和一个目标和,找到所有从根节点到叶子节点路径总和等于给定目标和的路径。 说明: 叶子节点是指没有子节点的节点。示例: 给定如下二叉树,以及目标和 sum = 22, 5 / \ 4 8 / / \ 11 13 4

2020-09-26 18:48:25 18

原创 (113)501. 二叉搜索树中的众数(leetcode)

题目链接:https://leetcode-cn.com/problems/find-mode-in-binary-search-tree/难度:简单501. 二叉搜索树中的众数 给定一个有相同值的二叉搜索树(BST),找出 BST 中的所有众数(出现频率最高的元素)。假定 BST 有如下定义: 结点左子树中所含结点的值小于等于当前结点的值 结点右子树中所含结点的值大于等于当前结点的值 左子树和右子树都是二叉搜索树例如: 给定 BST [1,null,2,2], 1 \

2020-09-25 08:38:47 7

原创 (112)617. 合并二叉树(leetcode)

题目链接:https://leetcode-cn.com/problems/merge-two-binary-trees/难度:简单617. 合并二叉树 给定两个二叉树,想象当你将它们中的一个覆盖到另一个上时,两个二叉树的一些节点便会重叠。 你需要将他们合并为一个新的二叉树。合并的规则是如果两个节点重叠,那么将他们的值相加作为节点合并后的新值,否则不为 NULL 的节点将直接作为新二叉树的节点。示例 1: 输入: Tree 1 Tree 2

2020-09-23 10:32:24 5

原创 (111)968. 监控二叉树(leetcode)

题目链接:https://leetcode-cn.com/problems/binary-tree-cameras/难度:困难968. 监控二叉树 给定一个二叉树,我们在树的节点上安装摄像头。 节点上的每个摄影头都可以监视其父对象、自身及其直接子对象。 计算监控树的所有节点所需的最小摄像头数量。示例 1: 输入:[0,0,null,0,0] 输出:1 解释:如图所示,一台摄像头足以监控所有节点。示例 2: 输入:[0,0,null,0,null,0,null,null,0] 输出:

2020-09-22 10:07:18 9

原创 (110)538. 把二叉搜索树转换为累加树(leetcode)

题目链接:https://leetcode-cn.com/problems/convert-bst-to-greater-tree/难度:简单538. 把二叉搜索树转换为累加树给定一个二叉搜索树(Binary Search Tree),把它转换成为累加树(Greater Tree),使得每个节点的值是原来的节点值加上所有大于它的节点值之和。例如: 输入: 原始二叉搜索树: 5 / \ 2 13 输出: 转换为累加树:

2020-09-21 10:00:06 13

原创 (106)47. 全排列 II(leetcode)

题目链接:https://leetcode-cn.com/problems/permutations-ii/难度:中等47. 全排列 II给定一个可包含重复数字的序列,返回所有不重复的全排列。示例: 输入: [1,1,2] 输出: [ [1,1,2], [1,2,1], [2,1,1] ]此题不会。。。。 对我来说有点难 不过看完题解后还是比较好理解 (貌似是第三次碰到这种类型的题了。。。 有点狗)记个坐标题解class Solution {public:

2020-09-20 18:03:27 4

原创 (104)37. 解数独(leetcode)

题目链接:https://leetcode-cn.com/problems/sudoku-solver/难度:困难37. 解数独 编写一个程序,通过已填充的空格来解决数独问题。 一个数独的解法需遵循如下规则: 数字 1-9 在每一行只能出现一次。 数字 1-9 在每一列只能出现一次。 数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。 空白格用 '.' 表示。Note: 给定的数独序列只包含数字 1-9 和字符 '.' 。 你可以假设给定的数独只有唯一解。 给定数独永

2020-09-20 17:33:09 6

原创 (109)78. 子集(leetcode)

链接:https://leetcode-cn.com/problems/subsets/难度:中等78. 子集 给定一组不含重复元素的整数数组 nums,返回该数组所有可能的子集(幂集)。说明: 解集不能包含重复的子集。示例: 输入: nums = [1,2,3] 输出: [ [3], [1], [2], [1,2,3], [1,3], [2,3], [1,2], [] ]简单的一批。。这是中等题吗 爱了爱了第一个解法class

2020-09-20 13:30:29 7

原创 (108)404. 左叶子之和(leetcode)

题目链接:https://leetcode-cn.com/problems/sum-of-left-leaves/难度:简单404. 左叶子之和计算给定二叉树的所有左叶子之和。示例: 3 / \ 9 20 / \ 15 7在这个二叉树中,有两个左叶子,分别是 9 和 15,所以返回 24还是简单题好 简单的一批。。。。/** * Definition for a binary tree node. * struct TreeNode { *

2020-09-20 13:30:03 1

空空如也

空空如也

空空如也

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

TA关注的人 TA的粉丝

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