![](https://img-blog.csdnimg.cn/88c241917db345f3aa64faec36189ac4.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
LeetCode基础入门
文章平均质量分 66
LeetCode简单题刷题集
Balenciage
这个作者很懒,什么都没留下…
展开
-
LeetCode3. 无重复字符的最长子串(Java)
给定一个字符串s,请你找出其中不含有重复字符的的长度。3因为无重复字符的最长子串是"abc",所以其长度为 3。1因为无重复字符的最长子串是"b",所以其长度为 1。3因为无重复字符的最长子串是"wke",所以其长度为 3。请注意,你的答案必须是的长度,"pwke"是一个子序列,不是子串。原创 2024-03-25 17:31:50 · 187 阅读 · 0 评论 -
LeetCode2. 两数相加(Java)
给你两个的链表,表示两个非负的整数。它们每位数字都是按照的方式存储的,并且每个节点只能存储数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0 开头。[7,0,8][0]原创 2024-03-17 11:25:34 · 388 阅读 · 0 评论 -
LeetCode169. 多数元素(Java)
给定一个大小为n的数组nums,返回其中的多数元素。多数元素是指在数组中出现次数⌊ n/2 ⌋的元素。你可以假设数组是非空的,并且给定的数组总是存在多数元素。32。原创 2024-03-13 08:00:00 · 374 阅读 · 0 评论 -
LeetCode168. Excel表列名称(Java)
给你一个整数,返回它在 Excel 表中相对应的列名称。例如:A -> 1B -> 2C -> 3...Z -> 26AA -> 27AB -> 28..."A""AB""ZY""FXSHRXW"原创 2024-03-12 09:43:23 · 372 阅读 · 0 评论 -
LeetCode160. 相交链表(Java)
LeetCode160. 相交链表(Java)原创 2024-03-10 15:21:22 · 1140 阅读 · 0 评论 -
145. 二叉树的后序遍历
给你一棵二叉树的根节点root,返回其节点值的。原创 2024-03-04 08:00:00 · 293 阅读 · 0 评论 -
144. 二叉树的前序遍历
给你二叉树的根节点root,返回它节点值的遍历。[1,2,3]root = [][]root = [1][1][1,2][1,2][0, 100]使用递归的方法求解。原创 2024-03-03 17:10:07 · 485 阅读 · 0 评论 -
136. 只出现一次的数字
给你一个整数数组nums,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。你必须设计并实现线性时间复杂度的算法来解决此问题,且该算法只使用常量额外空间。原创 2024-03-01 16:15:43 · 362 阅读 · 0 评论 -
125. 验证回文串(Java)
如果在将所有大写字符转换为小写字符、并移除所有非字母数字字符之后,短语正着读和反着读都一样。则可以认为该短语是一个。字母和数字都属于字母数字字符。给你一个字符串s,如果它是,返回true;否则,返回false。true"amanaplanacanalpanama" 是回文串。false"raceacar" 不是回文串。s = " "true在移除非字母数字字符之后,s 是一个空字符串 ""。由于空字符串正着反着读都一样,所以是回文串。原创 2024-02-23 22:25:17 · 910 阅读 · 0 评论 -
121. 买卖股票的最佳时机(Java)
解法:给定一个数组prices,它的第i个元素prices[i]表示一支给定股票第i天的价格。你只能选择买入这只股票,并选择在卖出该股票。设计一个算法来计算你所能获取的最大利润。返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回0。5在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5。注意利润不能是 7-1 = 6, 因为卖出价格需要大于买入价格;同时,你不能在买入前卖出股票。0。原创 2023-12-28 16:56:48 · 519 阅读 · 0 评论 -
119. 杨辉三角 II(Java)
给定一个非负索引rowIndex,返回「杨辉三角」的第rowIndex行。在「杨辉三角」中,每个数是它左上方和右上方的数的和。原创 2023-12-26 08:00:00 · 509 阅读 · 0 评论 -
118. 杨辉三角
给定一个非负整数 numRows生成「杨辉三角」的前 numRows行。在「杨辉三角」中,每个数是它左上方和右上方的数的和。[[1]]原创 2023-12-18 08:00:00 · 384 阅读 · 0 评论 -
112. 路径总和(Java)
给你二叉树的根节点root和一个表示目标和的整数targetSum。判断该树中是否存在的路径,这条路径上所有节点值相加等于目标和targetSum。如果存在,返回true;否则,返回false。是指没有子节点的节点。true等于目标和的根节点到叶节点路径如上图所示。false树中存在两条根节点到叶子节点的路径:(1 --> 2): 和为 3(1 --> 3): 和为 4不存在 sum = 5 的根节点到叶子节点的路径。false由于树是空的,所以不存在根节点到叶子节点的路径。原创 2023-12-13 08:00:00 · 923 阅读 · 0 评论 -
111. 二叉树的最小深度
给定一个二叉树,找出其最小深度。最小深度是从根节点到最近叶子节点的最短路径上的节点数量。叶子节点是指没有子节点的节点。25[0, 105]原创 2023-12-12 08:00:00 · 374 阅读 · 0 评论 -
110. 平衡二叉树(Java)
给定一个二叉树,判断它是否是高度平衡的二叉树。本题中,一棵高度平衡二叉树定义为:一个二叉树每个节点的左右两个子树的高度差的绝对值不超过 1。原创 2023-12-11 22:14:15 · 382 阅读 · 0 评论 -
108. 将有序数组转换为二叉搜索树
给你一个整数数组nums,其中元素已经按排列,请你将其转换为一棵二叉搜索树。二叉树是一棵满足「每个节点的左右两个子树的高度差的绝对值不超过 1 」的二叉树。[0,-10,5,null,-3,null,9] 也将被视为正确答案:[3,1][1,null,3] 和 [3,1] 都是高度平衡二叉搜索树。原创 2023-12-10 16:32:38 · 732 阅读 · 0 评论 -
104. 二叉树的最大深度(Java)
给定一个二叉树root,返回其最大深度。二叉树的是指从根节点到最远叶子节点的最长路径上的节点数。32[0, 104]直接使用深度优先遍历方法遍历到最深然后返回数字。原创 2023-12-08 12:26:02 · 857 阅读 · 0 评论 -
101. 对称二叉树
给你一个二叉树的根节点root, 检查它是否轴对称。truefalse[1, 1000]左边为:右边为:接着的树按照遍历,的树按照遍历,遍历后将遍历出来的数字存储到两个数组中,最后判断两个数组是否相等即可。原创 2023-12-07 21:41:06 · 797 阅读 · 0 评论 -
100. 相同的树(Java)
给你两棵二叉树的根节点p和q,编写一个函数来检验这两棵树是否相同。如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。truefalsefalse[0, 100]将树中的元素分别取出,用StringBuilder进行接收,然后用equals方法判断是否相同。原创 2023-12-06 15:45:04 · 974 阅读 · 1 评论 -
94. 二叉树的中序遍历(Java)
给定一个二叉树的根节点root,返回它的遍历。原创 2023-12-05 19:21:04 · 458 阅读 · 0 评论 -
88. 合并两个有序数组(Java)
给你两个按排列的整数数组nums1和nums2,另有两个整数m和n,分别表示nums1和nums2中的元素数目。请你nums2到nums1中,使合并后的数组同样按排列。最终,合并后数组不应由函数返回,而是存储在数组nums1中。为了应对这种情况,nums1的初始长度为m + n,其中前m个元素表示应合并的元素,后n个元素为0,应忽略。nums2的长度为n。需要合并 [1,2,3] 和 [2,5,6]。合并结果是 [,2,,5,6] ,其中斜体加粗标注的为 nums1 中的元素。[1]原创 2023-12-04 21:59:45 · 338 阅读 · 1 评论 -
83. 删除排序链表中的重复元素(java)
给定一个已排序的链表的头head删除所有重复的元素,使每个元素只出现一次。返回已排序的链表。原创 2023-12-03 16:27:26 · 403 阅读 · 1 评论 -
70. 爬楼梯
解法:假设你正在爬楼梯。需要n阶你才能到达楼顶。每次你可以爬1或2个台阶。你有多少种不同的方法可以爬到楼顶呢?n = 22有两种方法可以爬到楼顶。1. 1 阶 + 1 阶2. 2 阶n = 33有三种方法可以爬到楼顶。1. 1 阶 + 1 阶 + 1 阶2. 1 阶 + 2 阶3. 2 阶 + 1 阶解法:此题的原模型为斐波那契数列,指的是这样一个数列:即F(n)=F(n-1)+F(n-2),(n>=2n),显然,斐波那契数列是一个。原创 2023-12-02 17:58:20 · 432 阅读 · 0 评论 -
67. 二进制求和
给你两个二进制字符串a和b,以二进制字符串的形式返回它们的和。原创 2023-12-01 14:33:51 · 386 阅读 · 1 评论 -
66. 加一
给定一个由组成的数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位, 数组中每个元素只存储数字。你可以假设除了整数 0 之外,这个整数不会以零开头。[1,2,4]输入数组表示数字 123。[4,3,2,2]输入数组表示数字 4321。[1]原创 2023-11-30 08:00:00 · 632 阅读 · 0 评论 -
58. 最后一个单词的长度
单词的长度。原创 2023-11-29 14:36:17 · 338 阅读 · 1 评论 -
35. 搜索插入位置
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。请必须使用时间复杂度为O(log n)的算法。214。原创 2023-11-29 08:00:00 · 470 阅读 · 1 评论 -
28. 找出字符串中第一个匹配项的下标
给你两个字符串haystack和needle,请你在haystack字符串中找出needle字符串的第一个匹配项的下标(下标从 0 开始)。如果needle不是haystack的一部分,则返回-1。0"sad" 在下标 0 和 6 处匹配。第一个匹配项的下标是 0 ,所以返回 0。-1"leeto" 没有在 "leetcode" 中出现,所以返回 -1。needle。原创 2023-11-28 15:23:11 · 978 阅读 · 0 评论 -
1. 两数之和(Java实现)
给定一个整数数组nums和一个整数目标值target,请你在该数组中找出target的那整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。[0,1]因为 nums[0] + nums[1] == 9 ,返回 [0, 1]。[1,2][0,1]原创 2023-11-17 22:46:10 · 40 阅读 · 0 评论 -
9. 回文数
从左向右读, 为 -121。从右向左读, 为 121-。因此它不是一个回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。从右向左读, 为 01。因此它不是一个回文数。是一个回文整数,返回。原创 2023-11-19 12:29:02 · 35 阅读 · 0 评论 -
20.有效的括号
给定一个只包括'('')''{''}''['']'的字符串s,判断字符串是否有效。原创 2023-11-22 17:56:27 · 350 阅读 · 0 评论 -
21. 合并两个有序链表
将两个升序链表合并为一个新的链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。[][0]l2。原创 2023-11-26 13:34:07 · 986 阅读 · 1 评论 -
27. 移除元素
给你一个数组nums和一个值val,你需要移除所有数值等于val的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用O(1)额外空间并。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。为什么返回数值是整数,但输出的答案是数组呢?请注意,输入数组是以方式传递的,这意味着在函数里修改输入数组对于调用者是可见的。你可以想象内部操作如下://是以“引用”方式传递的。也就是说,不对实参作任何拷贝// 在函数里修改输入数组对于调用者是可见的。原创 2023-11-26 16:57:52 · 829 阅读 · 1 评论