自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 [高频sql50题(基础版)]第一千二百八十题,学生们参加各科测试的次数

这个查询将返回一个包含每个学生在每个科目上的考试次数的结果集,即使学生没有参加某个科目的考试(在这种情况下,考试次数将为 0)。这张考试表的每一行记录就表示学生表里的某个学生参加了一次科目表里某门科目的测试。Alice 参加了 3 次数学测试, 2 次物理测试,以及 1 次编程测试;Bob 参加了 1 次数学测试, 1 次编程测试,没有参加物理测试;查询出每个学生参加每一门科目测试的次数,结果按。学生表里的一个学生修读科目表里的每一门科目。该表内的每一行都记录有学校一名学生的信息。查询结构格式如下所示。

2024-07-15 22:45:26 553 1

原创 [高频 SQL 50 题(基础版)]第一千六百六十一题,每台机器的进程平均运行时间

(machine_id, process_id, activity_type) 是当前表的主键(具有唯一值的列的组合)。机器 2 的平均耗时: ((4.512 - 4.100) + (5.000 - 2.500)) / 2 = 1.456。'start' 代表该进程在这台机器上的开始运行时间戳 , 'end' 代表该进程在这台机器上的终止运行时间戳。平均耗时通过计算每台机器上所有进程任务的总耗费时间除以机器上的总进程数量获得。activity_type 是枚举类型 ('start', 'end')。

2024-07-14 10:50:40 888

原创 [高频SQL50题(基础版)]第一千五百八十一题,进店却未进行交易的顾客

在 2 次访问中,他们没有进行任何交易,在 1 次访问中,他们进行了 3 次交易。ID = 23 的顾客曾经逛过一次购物中心,并在 ID = 12 的访问期间进行了一笔交易。ID = 9 的顾客曾经逛过一次购物中心,并在 ID = 13 的访问期间进行了一笔交易。ID = 30 的顾客曾经去过购物中心,并且没有进行任何交易。ID = 96 的顾客曾经去过购物中心,并且没有进行任何交易。4. 按顾客ID进行分组,并统计每个顾客未进行交易的访问次数。2. 找到所有的交易记录。输入: Visits。

2024-07-10 18:59:04 355

原创 [高频 SQL 50 题(基础版)]第五百九十五题,大的国家

这张表的每一行提供:国家名称、所属大陆、面积、人口和 GDP 值。如果一个国家满足下述两个条件之一,则认为该国是。是该表的主键(具有唯一值的列)。的国家名称、人口和面积。返回结果格式如下例所示。

2024-07-10 13:35:36 272

原创 [高频SQL50题(基础版)]第五百八十四题,寻找用户推荐人

但是问题在于,没考虑到referee_id=null的情况,因为sql不同于java,当为null时只判断2是不可以的,所以加上下面的语句。这道题有很大的难度,因为要考虑SQL优化,只想简单的语句是会超出时间限制的,因为referee_id可能会很复杂。这里虽然逻辑是对的,但是会超出时间限制,所以还是要优化sql修改代码。该表的每一行表示一个客户的 id、姓名以及推荐他们的客户的 id。在 SQL 中,id 是该表的主键列。我们看一下前面时间少的答案是怎么做的。这里虽然通过了,但是时间太长了。

2024-07-10 10:57:59 349

原创 [高频 SQL 50 题(基础版)]第一千七百五十七题,可回收且低脂产品

low_fats 是枚举类型,取值为以下两种 ('Y', 'N'),其中 'Y' 表示该产品是低脂产品,'N' 表示不是低脂产品。recyclable 是枚举类型,取值为以下两种 ('Y', 'N'),其中 'Y' 表示该产品可回收,而 'N' 表示不可回收。没什么难度,作为基础题五十题的第一题练手,现在也开始陆续写一些SQL,作为记录,和leetcode一起,大家都加油。编写解决方案找出既是低脂又是可回收的产品编号。是该表的主键(具有唯一值的列)。

2024-07-10 00:01:48 303

原创 [leetcode hot 150]第二十三题,合并K个升序链表

这题虽然是困难题,但是思路很清晰,很好理解,主要借助最小堆,因为最小堆有着将最小的元素置为堆顶的性质,所以每次取最小值时将最小堆的头推出即可。并且使用dummy作为结果的头结点返回。请你将所有链表合并到一个升序链表中,返回合并后的链表。给你一个链表数组,每个链表都已经按升序排列。将它们合并到一个有序链表中得到。

2024-07-06 21:04:35 267

原创 [leetcode hot 150]第一百三十题,被围绕的区域

本题关键:只要这个区域有一个点在边界上,那么这个区域肯定不能被围绕,除了边界的区域其他所有区域都是被围绕的,改为X。

2024-07-06 20:11:24 348

原创 [leetcode hot 150]第一百一十七题,填充每个节点的下一个右侧节点

填充它的每个 next 指针,让这个指针指向其下一个右侧节点。如果找不到下一个右侧节点,则将 next 指针设置为。初始状态下,所有 next 指针都被设置为。可以使用层序遍历来解决这个问题。

2024-07-05 10:22:10 228

原创 [leetcode hot 150]第四百五十二题,用最少数量的箭引爆气球

有一些球形气球贴在一堵用 XY 平面表示的墙面上。墙面上的气球记录在整数数组。解决这个问题的关键是要找到尽可能多的重叠区间。处射出一支箭,若有一个气球的直径的开始和结束坐标为。你不知道气球的确切 y 坐标。弓箭一旦被射出之后,可以无限地前进。一支弓箭可以沿着 x 轴从不同点。返回引爆所有气球所必须射出的。可以射出的弓箭的数量。

2024-07-03 23:00:04 259

原创 [leetcode hot 150]第三题,无重复字符的最长子串

可以使用"滑动窗口"的方法来解决这个问题。,请你找出其中不含有重复字符的。

2024-07-03 21:31:31 298

原创 [leetcode hot 150]第五百三十题,二叉搜索树的最小绝对差

差值是一个正数,其数值等于两值之差的绝对值。给你一个二叉搜索树的根节点。

2024-06-30 11:33:45 188

原创 [leetcode hot 150]第一百六十七题,两数之和Ⅱ

你所设计的解决方案必须只使用常量级的额外空间。,请你从数组中找出满足相加之和等于目标数。如果设这两个数分别是。的形式返回这两个整数的下标。以长度为 2 的整数数组。重复使用相同的元素。

2024-06-30 10:06:15 294

原创 [leetcode hot 150]第一百二十二题,买卖股票的最佳时机Ⅱ

在每一天,你可以决定是否购买和/或出售股票。你也可以先购买,然后在。

2024-06-29 22:25:13 200

原创 更正:VMWARE出现错误关闭Hyper-V会导致Docker Desktop报错

总结:Docker Desktop无法与VMWARE同时使用,建议使用Docker Desktop更方便。运行bcdedit /set hypervisorlaunchtype auto。之前使用VMWARE时出现错误,当时在服务处将《HV主机服务》关闭,并使用命令。造成Docker Desktop无法使用。重启电脑后发现HV主机服务已自动开启。注意这里最后不是on也不是start。这时Docker恢复正常。

2024-06-26 17:05:27 313

原创 [leetcode hot 150]第十五题,三数之和

首先需要对数组进行排序。这是因为需要找到所有和为 0 的三元组,而对数组进行排序可以帮助更容易地识别这些三元组。指针处的元素之和是否等于 0。如果等于 0,我们将把这个三元组添加到。如果和大于 0,我们将把指针。与前一个迭代中的元素相同,将跳过当前迭代。答案中不可以包含重复的三元组。从数组第二个元素开始,指针。如果和小于 0,将把指针。,判断是否存在三元组。从数组开头开始,指针。

2024-06-20 22:11:41 426

原创 [leetcode hot 150]第十一题,盛水最多的容器

初始化分别位于高度数组开始和结束处的左右两个指针。计算指针当前位置的两行之间的面积。如果当前面积较大,更新最大面积。将高度较小的指针移向另一个指针。

2024-06-20 21:21:55 239 1

原创 解决:VMware Workstation 与 Device/Credential Guard 不兼容。在禁用 Device/Credential Guard 后,可以运行 VMware

关闭 Hyper-V: 使用快捷键"win+R"打开运行窗口,输入"services.msc"并确定,打开本地服务; 找到《HV主机服务》,双击打开,将启动类型设置为禁用。 通过命令关闭 Hyper-V: 使用快捷键"win+x",然后选择以管理员身份运行 Windows Powershell(管理员),也可以选择“cmd”以管理员身份运行; 运行以下命令:bcdedit /set hypervisorlaunchtype off 重启电脑。

2024-06-20 17:11:22 216

原创 [leetcode hot 150]第七十题,爬楼梯(动态规划)

题目:假设你正在爬楼梯。需要n阶你才能到达楼顶。每次你可以爬1或2个台阶。你有多少种不同的方法可以爬到楼顶呢?

2024-06-06 15:00:53 371

原创 [leetcode hot 150]第一百三十七题,只出现一次的数字Ⅱ

由于需要常数级空间和线性时间复杂度,常规的哈希表或者排序方法不适用。可以利用位运算来解决这个问题。如果某一位上的1的个数是3的倍数,那么该位在只出现一次的那个数字中是0,否则是1。你必须设计并实现线性时间复杂度的算法且使用常数级空间来解决此问题。对于每一位(bit),统计所有数字中该位上1的个数。请你找出并返回那个只出现了一次的元素。可以利用每个数字的二进制表示。外,其余每个元素都恰出现。

2024-06-05 10:13:30 209

原创 [leetcode hot 150]第一百三十六题,只出现一次的数字

根据题目关于空间、时间复杂度的要求,不能使用简单的遍历数组然后比较方式来解决这个问题,使用位运算。,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。你必须设计并实现线性时间复杂度的算法来解决此问题,且该算法只使用常量额外空间。中存储的就是只出现一次的元素,因为成对出现的元素在异或运算中会互相抵消。异或运算有一个重要的性质:任何一个数字与自己异或的结果是0。遍历数组中的每一个元素,并将其与。

2024-06-05 09:51:16 219

原创 [leetcode hot 150]第六百三十七题,二叉树的层平均值

可以使用广度优先搜索 (BFS) 的方式来遍历二叉树的每一层,并计算每一层节点的平均值。这道题本身不难,重新复习一下层序遍历的思想,首先创建一个队列,将根节点加入队列。这道题不难理解,属于简单题,主要是联系一下层序遍历的写法,层序遍历是很重要的。建立当前队列大小数量的循环,队列中存储的就是这一层的所有节点,然后进行计算。, 以数组的形式返回每一层节点的平均值。如果当前出队的节点有左/右孩子,都加入队列中。给定一个非空二叉树的根节点。以内的答案可以被接受。

2024-06-04 13:42:07 292

原创 [leetcode hot150]第五十七题,插入区间

升序排列,且区间之间不重叠(如果有必要的话,可以合并区间)。重叠的区间,需要合并它们。重叠的区间直接加入结果列表。你可以创建一个新数组然后返回它。按照区间起始端点排序的区间列表。表示另一个区间的开始和结束。个区间的开始和结束,并且。

2024-06-03 16:05:57 292 1

原创 [leetcode hot 150]第一百零八题,将有序数组转换为二叉搜索树

由于给定的数组是有序的,可以利用这个特性来构建二叉搜索树。可以选择数组中间的元素作为根节点,然后递归地构建左子树和右子树。给定一个有序的整数数组,我们需要构建一棵平衡的二叉搜索树。平衡二叉树是指任意一个节点的左右子树的高度差不超过1。利用有序数组的特点,将树构建出来。排列,请你将其转换为一棵。题目:给你一个整数数组。

2024-06-02 00:10:37 270

原创 [leetcode hot 150]第一百九十一题,位1的个数

编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中设置位的个数(也被称为。这道题比较简单,直接对最后一位进行与1的与操作,然后count++即可。

2024-05-29 18:09:37 227

原创 [leetcode hot150]第二百三十六题,二叉树的最近公共祖先

中最近公共祖先的定义为:“对于有根树 T 的两个节点 p、q,最近公共祖先表示为一个节点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(这个leetcode官方题解下面的树很正确的具象化了这个题的任务。可以使用递归的方式来解决这个问题。给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。

2024-05-29 17:34:09 370 1

原创 [leetcode hot150]第一百五十一题,反转字符串中的单词

中可能会存在前导空格、尾随空格或者单词间的多个空格。返回的结果字符串中,单词间应当仅用单个空格分隔,且不包含任何额外的空格。中使用至少一个空格将字符串中的。之间用单个空格连接的结果字符串。是由非空格字符组成的字符串。

2024-05-28 22:06:31 143

原创 [leetcode hot 150]第四十九题,字母异位词分组

这道题想要把字母一样的单词都放到一个List里,这题的重点是巧用Sort,把字母顺序排列,相同顺序的字母就是在一个List里。- 将排序后的字符数组转换为字符串`key`,用作哈希表的键。- 创建一个哈希表`map`,用来存储字母异位词组。- 遍历每个字符串,将其转换为字符数组,并进行排序。- 如果哈希表中不包含该键,则新建一个列表作为值。- 最后,将哈希表的所有值转换为一个列表返回。是由重新排列源单词的所有字母得到的一个新单词。- 将原字符串添加到对应的列表中。- 首先,检查输入数组是否为空。

2024-05-26 11:26:57 123

原创 [leetcode hot 150]第七十三题,矩阵置零

题目:给定一个m x n的矩阵,如果一个元素为,则将其所在行和列的所有元素都设为。请使用算法注意:原地算法,也就是说不能使用额外的矩阵来存储数据。

2024-05-24 16:13:48 172

原创 [leetcode hot 150]第五十题,计算Pow(x,n)

这种方式比直接计算 x^13 要高效得多,因为它只需要 O(log n) 次乘方和平方操作,而直接计算需要 O(n) 次乘法操作。- 奇数的最低位一定是 1,需要将当前的 x 乘入结果中,并将 n 减 1 来消去最低位的 1。4. 计算 x^13 = x^8 * x^4 * x。1. x^8 可以通过 (x^4)^2 来计算。2. x^4 可以通过 (x^2)^2 来计算。3. x^2 可以通过 x * x 来计算。2. 计算 x^4 = (x^2)^2。3. 计算 x^8 = (x^4)^2。

2024-05-24 15:41:33 286

原创 [leetcode hot150]第六十九题,x的平方根

思路:使用二分查找,通过(0,x)查找x平方根的位置。这道题最重要的是使用二分查找思想,思路比较清晰。不允许使用任何内置指数函数和算符,例如。由于返回类型是整数,结果只保留。

2024-05-24 14:04:53 202

原创 [leetcode hot 150]第五十六题,合并区间

题目:以数组intervals表示若干个区间的集合,其中单个区间为。请你合并所有重叠的区间,并返回一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间。思路:这道题目要求合并一个区间数组中所有重叠的区间。

2024-05-23 22:26:50 412

原创 [leetcode hot 150]第一百六十二题,寻找峰值

我们需要找到一个峰值元素的索引。峰值元素是指其值严格大于左右相邻值的元素。如果有多个峰值元素,返回任意一个峰值元素的索引即可。,找到峰值元素并返回其索引。数组可能包含多个峰值,在这种情况下,返回。那么首先我们要想到的是:给定一个整数数组。峰值元素是指其值严格大于左右相邻值的元素。,这意味着数组的两端被看作是负无穷大。根据分析,我觉得初步解题步骤为。你必须实现时间复杂度为。的算法来解决此问题。

2024-05-19 11:33:14 237

原创 [leetcode hot 150]第一百零二题,二叉树的层序遍历

题目:给你二叉树的根节点root,返回其节点值的。(即逐层地,从左到右访问所有节点)。

2024-05-14 20:40:40 255

原创 [leetcode hot150]第二百零九题,长度最小的子数组

给定一个含有n个正整数的数组和一个正整数target找出该数组中满足其总和大于等于target的长度最小的,并返回其长度如果不存在符合条件的子数组,返回0。

2024-05-09 17:04:47 212 1

原创 [leetcode hot 150]第七十四题,搜索二维矩阵

给你一个满足下述两条属性的m x n给你一个整数target,如果target在矩阵中,返回true;否则,返回false。这题的思路还是比较简单的,由于矩阵从左到右都是单调不减的。

2024-05-03 23:48:34 216 1

原创 [leetcode hot150]第一百一十四题,二叉树展开为链表

给你二叉树的根结点rootTreeNoderightnull。

2024-05-03 11:24:05 233 1

原创 [leetcode hot150]第二百三十八题,除自身以外数组的乘积

给你一个整数数组nums,返回数组answer,其中answer[i]等于nums中除nums[i]之外其余各元素的乘积。题目数据数组nums之中任意元素的全部前缀元素和后缀的乘积都在整数范围内。请且在O( n)时间复杂度内完成此题。

2024-05-02 21:34:58 183 2

原创 [leetcode hot150]第二百七十四题,H指数

这里我没用Array.sort(),数组排序正好复习一下手写快排。这个算法将数组的索引和数组索引对应的值联系起来,巧妙解决了问题。篇论文被引用的次数。计算并返回该研究者的 h。这个思路的关键在于,我们需要找到一个最大的。代表“高引用次数” ,一名科研人员的。篇论文被引用次数大于等于。篇论文被引用次数大于等于。意味着这个研究者至少有。我们要找到最大的这样的。是指他(她)至少发表了。

2024-05-02 16:28:09 343 1

原创 [leetcode hot 150]第一百五十题,逆波兰表达式求值

遍历完整个表达式后,栈中剩下的元素就是表达式的最终结果。这道题知道了思路之后就比较简单,下面直接上代码,简单易懂。

2024-04-30 16:49:10 205 1

空空如也

空空如也

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

TA关注的人

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