LeetCode
文章平均质量分 67
iiiiiankor
欢迎来到我的个人博客!我是一名在校生,热爱学习和探索各种知识。在我的博客中,我记录了自己学习的心得和体会,分享了各种有趣的知识和经验。通过这个平台,我希望能够与大家一起共同进步,激发彼此的思考和灵感。无论你对哪个领域感兴趣,都希望我的博客能成为一个启发和交流的地方。让我们一同追求知识,共同成长!感谢你的支持和参与,期待和你在这个知识的旅程中相遇。
展开
-
LeetCode35.搜索插入位置
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。请必须使用时间复杂度为 O(log n) 的算法。原创 2024-06-23 09:24:15 · 373 阅读 · 0 评论 -
LeetCode665.非递减数列
请你判断在 最多 改变 1 个元素的情况下,该数组能否变成一个非递减数列。我们是这样定义一个非递减数列的: 对于数组中任意的。原创 2024-06-23 09:22:10 · 493 阅读 · 0 评论 -
LeetCode118.杨辉三角 | LeetCode119.杨辉三角Ⅱ
给定一个非负整数 numRows,生成「杨辉三角」的前 numRows 行。每一次从当前行j位置开始,从后向前走(否则前面的会被覆盖)在「杨辉三角」中,每个数是它左上方和右上方的数的和。,返回「杨辉三角」的第。就从下标从1的行开始迭代。j位置+=j-1位置的值。求下标为index的行。原创 2024-06-21 16:08:31 · 528 阅读 · 0 评论 -
LeetCode322.零钱兑换(一)
dp[i]表示达到金额 i 所需要的最最少硬币枚数每个状态所能加的钱数 只能是。原创 2024-06-19 11:39:29 · 554 阅读 · 0 评论 -
字符串的最小编辑距离(动态规划经典题目)
编辑距离的算法是首先由俄国科学家 Levenshtein 提出的,故又叫 Levenshtein Distance。Levenshtein 距离,又称编辑距离,指的是两个字符串之间,由一个转换成另一个所需的最少编辑操作次数。dp数组的开辟:str1.size() +1 行, str2.size() +1 列。把这个操作所需要的次数定义为两个字符串的距离。数据范围:给定的字符串长度满足 1原创 2024-06-19 11:37:14 · 338 阅读 · 0 评论 -
【链表经典面试题】LeetCode138.复制带随机指针的链表(链表深拷贝)
解读: 题目意思就是 给你一个链表 这个链表中除了有next指针之外 还有一个指向这个链表的随机位置的一个指针,让你复制这一个链表。那么你拷贝之后的链表也是 7->13->11->10->1 并且13指向拷贝之后的链表中的7。原链表是7->13->11>10->1 ,其中13的random指向的是原链表中的7。而你复制之后的这个链表中的每一个节点的随机指针,也应该像原链表一样指向对应的节点。每一个拷贝的节点都直接链接在原节点的后面,形成一个大链表(考察链表节点的插入)(怕就怕他有不止一个相同的值)原创 2024-06-18 00:14:22 · 943 阅读 · 0 评论 -
LeetCode43.字符串相乘【大整数相乘】
给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式。该算法是通过两数相乘时,乘数某位与被乘数某位相乘,与产生结果的位置的规律来完成。外层:N , 内层:遍历num1:M,字符串相加(最大为M+N):不能使用任何内置的 BigInteger 库或直接将输入转换为整数。那么他们的结果的位数不会超过M+N(一位数*两位数结果最大也就3位数。M为num1的长度,N为num2的长度。的结果一定是两位数并且小于等于81,原创 2024-06-16 22:20:35 · 576 阅读 · 0 评论 -
LeetCode20.有效的括号
我们刚上来的思路可能是:找出这三种括号的个数如果都是偶数 说明匹配但是这里还有一个顺序问题 比如 " )( "这样是不匹配的!所以这种思路不可取!我们想 如果遇到左括号,把他读到一个顺序表中,然后遇到匹配的右括号就把他放出来,也就相当于对对碰比如 "" 我们会把{ [ (读到一个顺序表里然后依次让( )[ ]{ }对对碰消掉,如果最后顺序表中没有元素是不是说明就匹配呢?这里我们就考虑使用 栈!因为栈只有压栈和出栈,十分符合这道题。原创 2024-06-15 09:26:54 · 258 阅读 · 0 评论 -
链表经典题目:环形链表问题(LeetCode141.环形链表、LeetCode142.环形链表Ⅱ)
🌟🌟🌟环形链表问题在面试中是经常爱考的,你有没有发现环形链表的题目代码都没有很难,一般是思路难以想到,所以人家考你的是思路,并不真的会纠你代码写的怎么样!快指针必须一次走2步吗?可以一次走3步,走4步可以吗?你会怎么回答?怎么证明快指针一次走2步一定可以追上?这里我们简单证明一下:➡️快指针一次走2步那么一定可以追得上首先需要知道,fast什么时候开始追击slow因为fast首先进入环,在slow进环之前,二者的运动路径并不一样!只有当slow也开始进环,才开始所谓的追及问题。原创 2024-06-15 09:23:13 · 1208 阅读 · 0 评论 -
LeetCode303.区域和检索-数组不可变
计算[1,3]的元素和 就是计算[0,3]元素和 减去 [0,0]元素和。计算[2,5]元素和 就是计算[0,5]元素和 减去 [0,1]元素和。之所以创建一个 比元素组nums大1的空间,是因为 left >= 1。其实就是让你计算一个数组从left到right之间的元素和。创建一个数组,每个位置 i 存放了 [0,i-1]的元素和。(包含 left 和 right)之间的。需要计算[0,left-1]的元素和。(left的前提是>= 1)但是 题目要求设计一个类。所以这一题就是一个经典的。原创 2024-06-14 23:04:02 · 371 阅读 · 0 评论 -
LeetCode150.逆波兰表达式
给你一个字符串数组 tokens ,表示一个根据 逆波兰表示法 表示的算术表达式。逆波兰表达式是一种后缀表达式,所谓后缀就是指算符写在后面。这个题如果我们不了解后缀表达式是怎么运算的,是没办法做的。这就需要通过所给示例来推导 后缀表达式的运算方法。返回一个表示表达式值的整数。首先需要明确两个表达式的转换。并把它和栈的性质结合起来。原创 2024-06-14 23:00:23 · 361 阅读 · 0 评论