代码随想录
文章平均质量分 50
SOTA-
这个作者很懒,什么都没留下…
展开
-
代码随想录.力扣.二叉树.105/106. 从中序与前序/后序序列构造二叉树
给定两个整数数组preorder和inorder,其中preorder是二叉树的inorder是同一棵树的,请构造二叉树并返回其根节点。原创 2023-02-09 22:57:52 · 379 阅读 · 0 评论 -
代码随想录.力扣.二叉树.404. 左叶子之和
给定二叉树的根节点root,返回所有左叶子之和。24在这个二叉树中,有两个左叶子,分别是 9 和 15,所以返回 24root = [1]0[1, 1000]原创 2023-02-07 21:24:14 · 202 阅读 · 0 评论 -
代码随想录.力扣.二叉树.111. 二叉树的最小深度
给定一个二叉树,找出其最小深度。最小深度是从根节点到最近叶子节点的最短路径上的节点数量。叶子节点是指没有子节点的节点。25[0, 105]原创 2023-01-31 21:39:26 · 196 阅读 · 0 评论 -
代码随想录.力扣.二叉树.100. 相同的树/572. 另一棵树的子树
给你两棵二叉树的根节点p和q,编写一个函数来检验这两棵树是否相同。如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。原创 2023-01-29 22:05:02 · 215 阅读 · 0 评论 -
代码随想录.力扣.二叉树.101. 对称二叉树
给你一个二叉树的根节点root, 检查它是否轴对称。truefalse[1, 1000]你可以运用递归和迭代两种方法解决这个问题吗?原创 2023-01-28 22:17:53 · 167 阅读 · 0 评论 -
代码随想录.力扣.二叉树.226. 翻转二叉树
给你一棵二叉树的根节点root,翻转这棵二叉树,并返回其根节点。原创 2023-01-27 22:47:57 · 198 阅读 · 1 评论 -
代码随想录.力扣.二叉树.94. 二叉树的中序遍历(非递归)
给定一个二叉树的根节点root,返回它的遍历。[1,3,2]root = [][]root = [1][1][0, 100]递归算法很简单,你可以通过迭代算法完成吗?原创 2023-01-17 21:18:57 · 209 阅读 · 0 评论 -
代码随想录.力扣.栈与队列.71. 简化路径
给你一个字符串path,表示指向某一文件或目录的 Unix 风格(以'/'开头),请你将其转化为更加简洁的规范路径。在 Unix 风格的文件系统中,一个点()表示当前目录本身;此外,两个点 (..) 表示将目录切换到上一级(指向父目录);两者都可以是复杂相对路径的组成部分。任意多个连续的斜杠(即,'//')都被视为单个斜杠'/'。对于此问题,任何其他格式的点(例如,'...')均被视为文件/目录名称。请注意,返回的'/''/''/''.''..'返回简化后得到的。"/home"原创 2023-01-15 21:34:08 · 79 阅读 · 0 评论 -
代码随想录.力扣.栈与队列.347. 前 K 个高频元素
给你一个整数数组nums和一个整数k,请你返回其中出现频率前k高的元素。你可以按返回答案。[1,2][1]原创 2023-01-12 22:01:24 · 45 阅读 · 0 评论 -
代码随想录.力扣.栈和队列.150. 逆波兰表达式求值
给你一个字符串数组tokens,表示一个根据表示的算术表达式。请你计算该表达式。返回一个表示表达式值的整数。'+''-''*''/'9该算式转化为常见的中缀算术表达式为:((2 + 1) * 3) = 96该算式转化为常见的中缀算术表达式为:(4 + (13 / 5)) = 622该算式转化为常见的中缀算术表达式为:= 17 + 5= 22"+""-""*""/"逆波兰表达式是一种后缀表达式,所谓后缀就是指算符写在后面。原创 2023-01-10 20:47:55 · 117 阅读 · 0 评论 -
代码随想录.力扣.字符串.剑指 Offer 58 - II. 左旋转字符串
字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比如,输入字符串"abcdefg"和数字2,该函数将返回左旋转两位得到的结果"cdefgab"。"cdefgab"原创 2023-01-04 21:14:32 · 117 阅读 · 0 评论 -
代码随想录.力扣.字符串.151. 反转字符串中的单词
给你一个字符串s,请你反转字符串中的顺序。是由非空格字符组成的字符串。s中使用至少一个空格将字符串中的分隔开。返回顺序颠倒且之间用单个空格连接的结果字符串。输入字符串s中可能会存在前导空格、尾随空格或者单词间的多个空格。返回的结果字符串中,单词间应当仅用单个空格分隔,且不包含任何额外的空格。反转后的字符串中不能存在前导空格和尾随空格。如果两个单词间有多余的空格,反转后的字符串需要将单词间的空格减少到仅有一个。' 's。原创 2023-01-04 21:13:28 · 101 阅读 · 0 评论 -
代码随想录.力扣.字符串.剑指 Offer 05. 替换空格
请实现一个函数,把字符串s中的每个空格替换成"%20"。原创 2022-12-31 21:33:12 · 140 阅读 · 0 评论 -
代码随想录.力扣.字符串.541. 反转字符串 II
从字符串开头算起,每计数至。原创 2022-12-31 21:26:55 · 60 阅读 · 0 评论 -
代码随想录.力扣.哈希表.1. 两数之和
给定一个整数数组nums和一个整数目标值target,请你在该数组中找出target的那整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。[0,1]因为 nums[0] + nums[1] == 9 ,返回 [0, 1]。[1,2][0,1]原创 2022-12-26 22:38:52 · 103 阅读 · 0 评论 -
代码随想录.力扣.哈希表.202. 快乐数
编写一个算法来判断一个数n是不是快乐数。如果n是快乐数就返回true;不是,则返回false。原创 2022-12-25 21:25:58 · 86 阅读 · 0 评论 -
代码随想录.力扣.哈希表.350. 两个数组的交集 II
1.用vector需要注意,赋值arr[num],arr一定是有一个长度范围。原创 2022-12-23 20:46:10 · 136 阅读 · 0 评论 -
代码随想录.力扣.哈希表.349. 两个数组的交集
滑动窗口、哈希表、数组原创 2022-12-22 22:22:36 · 114 阅读 · 0 评论 -
代码随想录.力扣.哈希表.49. 字母异位词分组
哈希表,数组,字母异位词原创 2022-12-22 21:40:38 · 139 阅读 · 0 评论 -
代码随想录.力扣.哈希表.242. 有效的字母异位词
哈希表,数组原创 2022-12-21 21:56:30 · 125 阅读 · 0 评论 -
代码随想录.力扣.链表.203. 移除链表元素
给定一个链表的头节点head,返回链表开始入环的第一个节点。如果链表无环,则返回null。如果链表中有某个节点,可以通过连续跟踪next指针再次到达,则链表中存在环。为了表示给定链表中的环,评测系统内部使用整数pos来表示链表尾连接到链表中的位置()。如果pos是-1,则在该链表中没有环。pos,仅仅是为了标识链表的实际情况。链表。正在上传…重新上传取消返回索引为 1 的链表节点链表中有一个环,其尾部连接到第二个节点。返回索引为 0 的链表节点链表中有一个环,其尾部连接到第一个节点。原创 2022-12-20 20:14:45 · 121 阅读 · 0 评论 -
代码随想录.力扣.链表.206. 反转链表
给你单链表的头节点head,请你反转链表,并返回反转后的链表。原创 2022-12-18 22:04:42 · 86 阅读 · 0 评论 -
代码随想录.力扣.链表.203. 移除链表元素
给你一个链表的头节点head和一个整数val,请你删除链表中所有满足的节点,并返回。原创 2022-12-17 21:15:56 · 74 阅读 · 0 评论 -
代码随想录.力扣.数组.螺旋矩阵.54. 螺旋矩阵
给你一个m行n列的矩阵matrix,请按照,返回矩阵中的所有元素。原创 2022-12-15 21:31:25 · 216 阅读 · 0 评论 -
代码随想录.力扣.数组.螺旋矩阵.59.螺旋矩阵II
给你一个正整数n,生成一个包含1到n2所有元素,且元素按顺时针顺序螺旋排列的n x n正方形矩阵matrixn = 3n = 1[[1]]原创 2022-12-14 22:08:22 · 125 阅读 · 0 评论 -
代码随想录.力扣.数组.长度最小的子数组.76. 最小覆盖子串
给你一个字符串s、一个字符串t。返回s中涵盖t所有字符的最小子串。如果s中不存在涵盖t所有字符的子串,则返回空字符串""。tts"BANC""a"""t 中两个字符 'a' 均应包含在 s 的子串中,因此没有符合条件的子字符串,返回空字符串。t。原创 2022-12-13 22:18:59 · 88 阅读 · 0 评论 -
代码随想录.力扣.数组.长度最小的子数组.904. 水果成篮
你正在探访一家农场,农场从左到右种植了一排果树。这些树用一个整数数组fruits表示,其中fruits[i]是第i棵树上的水果。你想要尽可能多地收集水果。给你一个整数数组fruits,返回你可以收集的水果的数目。fruits = []3可以采摘全部 3 棵树。]3可以采摘 [1,2,2] 这三棵树。如果从第一棵树开始采摘,则只能采摘 [0,1] 这两棵树。]4可以采摘 [2,3,2,2] 这四棵树。如果从第一棵树开始采摘,则只能采摘 [1,2] 这两棵树。,3,3,4]5。原创 2022-12-13 22:06:13 · 100 阅读 · 0 评论 -
代码随想录.力扣.数组.长度最小的子数组.209.长度最小的子数组
给定一个含有n个正整数的数组和一个正整数target找出该数组中满足其和≥ target的长度最小的,并返回其长度如果不存在符合条件的子数组,返回0。2子数组[4,3]是该条件下的长度最小的子数组。10。原创 2022-12-12 22:11:50 · 164 阅读 · 0 评论 -
代码随想录.力扣.数组.有序数组的平方.977.有序数组的平方
给你一个按排序的整数数组nums,返回组成的新数组,要求也按排序。平方后,数组变为 [16,1,0,9,100]排序后,数组变为 [0,1,9,16,100]原创 2022-12-11 23:06:09 · 87 阅读 · 0 评论 -
代码随想录.力扣.数组.移除元素.844.比较含退格的字符串
给定s和t两个字符串,当它们分别被输入到空白的文本编辑器后,如果两者相等,返回true。#代表退格字符。如果对空文本输入退格字符,文本继续为空。trues 和 t 都会变成 "ac"。trues 和 t 都会变成 ""。falses 会变成 "c",但 t 仍然是 "b"。t'#'原创 2022-12-10 21:43:20 · 183 阅读 · 0 评论 -
代码随想录.力扣.数组.移除元素.26.删除排序数组中的重复项
给你一个的数组nums,请你删除重复出现的元素,使每个元素,返回删除后数组的新长度。元素的应该保持。由于在某些语言中不能改变数组的长度,所以必须将结果放在数组nums的第一部分。更规范地说,如果在删除重复项之后有k个元素,那么nums的前k个元素应该保存最终结果。将最终结果插入nums的前k个位置后返回k。不要使用额外的空间,你必须在并在使用 O(1) 额外空间的条件下完成。函数应该返回新的长度并且原数组nums的前两个元素被修改为 1,2。不需要考虑数组中超出新长度后面的元素。原创 2022-12-08 22:45:35 · 94 阅读 · 0 评论 -
代码随想录.力扣.数组.移除元素.27.移除元素
给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。示例 1: 给定 nums = [3,2,2,3], val = 3, 函数应该返回新的长度 2, 并且 nums 中的前两个元素均为 2。你不需要考虑数组中超出新长度后面的元素。原创 2022-12-08 22:38:10 · 134 阅读 · 0 评论 -
代码随想录.力扣.数组.二分查找.34.
给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值 target,返回 [-1, -1]原创 2022-12-06 22:22:16 · 120 阅读 · 0 评论 -
代码随想录.力扣.数组.二分查找.367.
给定一个 正整数 ,编写一个函数,如果 是一个完全平方数,则返回 ,否则返回 。进阶:不要 使用任何内置的库函数原创 2022-12-06 22:00:34 · 137 阅读 · 0 评论 -
代码随想录.力扣.数组.二分查找.35.
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。请必须使用时间复杂度为 的算法。示例 2:输入: nums = [1,3,5,6], target = 2输出: 1示例 3:输入: nums = [1,3,5,6], target = 7输出: 4提示:关键思路: 首先升序以及无重复元素。可以考虑二分法。原创 2022-12-06 11:20:27 · 154 阅读 · 0 评论 -
代码随想录.力扣.数组.二分查找.704.
代码随想录.力扣.数组.二分查找.704.原创 2022-12-06 10:03:23 · 155 阅读 · 0 评论