![](https://img-blog.csdnimg.cn/direct/9abfb53a0518488884c343e3dfbdd0e7.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
LeetCode
文章平均质量分 54
LeetCode
Java之弟
从零开始的秃头生活
展开
-
LeetCode--代码详解 146.LRU缓存
/ 该操作会使得关键字 2 作废,缓存是 {1=1, 3=3}// 该操作会使得关键字 1 作废,缓存是 {4=4, 3=3}// 缓存是 {1=1, 2=2}// 返回 -1 (未找到)lRUCache.get(1);// 返回 -1 (未找到)lRUCache.put(1, 1);// 缓存是 {1=1}本题可以使用java中封装好的LinkedHashMap。请你设计并实现一个满足。的平均时间复杂度运行。这里用手写链表的形式。原创 2024-03-05 23:12:15 · 915 阅读 · 0 评论 -
LeetCode--代码详解 230. 二叉搜索树中第K小的元素
给定一个二叉搜索树的根节点root,和一个整数k,请你设计一个算法查找其中第k个最小元素(从 1 开始计数)。13n。原创 2024-02-27 20:34:50 · 399 阅读 · 0 评论 -
LeetCode--代码详解 43.字符串相乘
给定两个以字符串形式表示的非负整数num1和num2,返回num1和num2的乘积,它们的乘积也表示为字符串形式。不能使用任何内置的 BigInteger 库或直接将输入转换为整数。原创 2024-02-27 20:12:13 · 387 阅读 · 0 评论 -
LeetCode--代码详解 236. 二叉树的最近公共祖先
给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。中最近公共祖先的定义为:“对于有根树 T 的两个节点 p、q,最近公共祖先表示为一个节点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(3节点5和节点1的最近公共祖先是节点3。5节点5和节点4的最近公共祖先是节点5。因为根据定义最近公共祖先节点可以为节点本身。1[2, 105]Node.val互不相同p!= qpq。原创 2024-02-25 22:07:37 · 343 阅读 · 0 评论 -
LeetCode--代码详解 235.二叉搜索树得最近公共祖先
给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(例如,给定如下二叉搜索树: root = [6,2,8,0,4,7,9,null,null,3,5]6节点2和节点8的最近公共祖先是6。2节点2和节点4的最近公共祖先是2, 因为根据定义最近公共祖先节点可以为节点本身。原创 2024-02-25 21:19:58 · 409 阅读 · 0 评论 -
LeetCode--代码详解 78.子集
给你一个整数数组nums,数组中的元素。返回该数组所有可能的子集(幂集)。解集包含重复的子集。你可以按返回解集。原创 2024-02-23 15:46:59 · 227 阅读 · 0 评论 -
LeetCode--代码详解 4.寻找两个正序数组的中位数
给定两个大小分别为m和n的正序(从小到大)数组nums1和nums2。请你找出并返回这两个正序数组的。算法的时间复杂度应该为。2.00000合并数组 = [1,2,3] ,中位数 22.50000合并数组 = [1,2,3,4] ,中位数 (2 + 3) / 2 = 2.5。原创 2024-02-20 22:04:55 · 518 阅读 · 0 评论 -
LeetCode--代码详解 104. 二叉树的最大深度
给定一个二叉树root,返回其最大深度。二叉树的是指从根节点到最远叶子节点的最长路径上的节点数。32[0, 104]原创 2024-02-20 21:30:10 · 207 阅读 · 0 评论 -
LeetCode--代码详解 59. 螺旋矩阵 II
给你一个正整数n,生成一个包含1到n2所有元素,且元素按顺时针顺序螺旋排列的n x n正方形矩阵matrix。原创 2024-02-20 21:06:07 · 405 阅读 · 0 评论 -
LeetCode--代码详解 54.螺旋矩阵
给你一个m行n列的矩阵matrix,请按照,返回矩阵中的所有元素。原创 2024-02-20 20:39:13 · 378 阅读 · 0 评论 -
LeetCode--代码详解 231.2的幂
给你一个整数n,请你判断该整数是否是 2 的幂次方。如果是,返回true;否则,返回false。如果存在一个整数x使得n == 2x,则认为n是 2 的幂次方。原创 2024-02-14 00:40:16 · 435 阅读 · 0 评论 -
LeetCode--代码详解 21.合并两个有序链表
将两个升序链表合并为一个新的链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。[][0]l2。原创 2024-02-12 22:18:44 · 454 阅读 · 0 评论 -
LeetCode--代码详解 155.最小栈
设计一个支持pushpoptop操作,并能在常数时间内检索到最小元素的栈。实现MinStackMinStack()void pop()int top()--> 返回 -3.--> 返回 0.--> 返回 -2.topgetMinpushpoptopgetMin3 * 104。原创 2024-02-12 21:02:41 · 337 阅读 · 0 评论 -
LeetCode--代码详解 33.搜索旋转排序数组
整数数组nums按升序排列,数组中的值。在传递给函数之前,nums在预先未知的某个下标k)上进行了,使数组变为(下标计数)。例如,在下标3处经旋转后可能变为。给你的数组nums和一个整数target,如果nums中存在这个目标值target,则返回它的下标,否则返回-1。你必须设计一个时间复杂度为O(log n)的算法解决此问题。原创 2024-02-12 20:08:01 · 289 阅读 · 0 评论 -
LeetCode--代码详解 7.整数反转
给你一个 32 位的有符号整数x,返回将x中的数字部分反转后的结果。如果反转后整数超过 32 位的有符号整数的范围,就返回 0。原创 2024-02-12 15:13:40 · 513 阅读 · 0 评论 -
LeetCode--代码详解 3.无重复字符的最长子串
给定一个字符串s,请你找出其中不含有重复字符的的长度。3因为无重复字符的最长子串是"abc",所以其长度为 3。1因为无重复字符的最长子串是"b",所以其长度为 1。3因为无重复字符的最长子串是"wke",所以其长度为 3。请注意,你的答案必须是的长度,"pwke"是一个子序列,不是子串。原创 2024-02-12 00:17:13 · 298 阅读 · 0 评论 -
LeetCode--代码详解 2341.数组能形成多少数对
nums[0] 和 nums[3] 形成一个数对,并从 nums 中移除,nums = [3,2,3,2,2]。nums[0] 和 nums[2] 形成一个数对,并从 nums 中移除,nums = [2,2,2]。nums[0] 和 nums[1] 形成一个数对,并从 nums 中移除,nums = [2]。nums[0] 和 nums[1] 形成一个数对,并从 nums 中移除,nums = []。总共形成 1 个数对,nums 中剩下 0 个数字。无法形成数对,nums 中剩下 1 个数字。原创 2024-02-06 22:59:53 · 244 阅读 · 0 评论 -
LeetCode--代码详解 292.Nim游戏
你和你的朋友,两个人一起玩假设你们每一步都是最优解。请编写一个函数,来判断你是否可以在给定石头数量为n的情况下赢得游戏。如果可以赢,返回true;否则,返回false。n = 4false以下是可能的结果:1. 移除1颗石头。你的朋友移走了3块石头,包括最后一块。你的朋友赢了。2. 移除2个石子。你的朋友移走2块石头,包括最后一块。你的朋友赢了。3.你移走3颗石子。你的朋友移走了最后一块石头。你的朋友赢了。在所有结果中,你的朋友是赢家。原创 2024-02-04 22:59:30 · 499 阅读 · 0 评论 -
LeetCode--代码详解 2.两数相加
难度:中等给你两个的链表,表示两个非负的整数。它们每位数字都是按照的方式存储的,并且每个节点只能存储数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0 开头。原创 2024-02-04 22:35:30 · 561 阅读 · 0 评论 -
LeetCode--代码详解 1.两数之和
但是,数组中同一个元素在答案里不能重复出现。因为 nums[0] + nums[1] == 9 ,返回 [0, 1]。由于哈希表是空的,这个元素肯定不存在,所以我们将。函数来找到两个数的索引,它们的和等于目标值。,表示找到了符合条件的两个数的索引。中两个数的索引,它们的和等于 9。整数,并返回它们的数组下标。首先,我们创建一个空的哈希表。向量,首先取出第一个元素。,计算它与目标值的差值,即。,计算它与目标值的差值,即。接着,我们取出下一个元素。最后,我们返回结果向量。原创 2024-02-04 21:44:42 · 421 阅读 · 0 评论 -
LeetCode--455.分发饼干
假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。,这个孩子会得到满足。你的目标是尽可能满足越多数量的孩子,并输出这个最大数值。虽然你有两块小饼干,由于他们的尺寸都是1,你只能让胃口值是1的孩子满足。你有三个孩子和两块小饼干,3个孩子的胃口值分别是:1,2,3。,这是能让孩子们满足胃口的饼干的最小尺寸;你有两个孩子和三块小饼干,2个孩子的胃口值分别是1,2。你拥有的饼干数量和尺寸都足以让所有孩子满足。原创 2024-02-04 00:12:41 · 162 阅读 · 0 评论