
力扣
文章平均质量分 71
力扣做题笔记
一颗小芋圆
这个作者很懒,什么都没留下…
展开
-
力扣--1300. 转变数组后最接近目标值的数组和(中等题)
力扣--1300. 转变数组后最接近目标值的数组和(中等题)【题目描述】【示例】【题解】【思路】【代码】原题传送门【题目描述】给你一个整数数组 arr 和一个目标值 target ,请你返回一个整数 value ,使得将数组中所有大于 value 的值变成 value 后,数组的和最接近 target (最接近表示两者之差的绝对值最小)。如果有多种使得和最接近 target 的方案,请你返回这些整数中的最小值。请注意,答案不一定是 arr 中的数字。【示例】示例 1:输入:arr = [原创 2021-04-27 16:08:41 · 135 阅读 · 0 评论 -
1052. 爱生气的书店老板(中等题)--滑动窗口
力扣--1052. 爱生气的书店老板(中等题)--滑动窗口【题目描述】【示例】【直接暴力】【思路】【代码】【滑动窗口代码】这题最开始写的超时了,后来发现之前的写法有很多重复的计算,优化之后就过了,感觉这种写法遇到蛮多次的,做个笔记。原题传送门【题目描述】今天,书店老板有一家店打算试营业 customers.length 分钟。每分钟都有一些顾客(customers[i])会进入书店,所有这些顾客都会在那一分钟结束后离开。在某些时候,书店老板会生气。 如果书店老板在第 i 分钟生气,那么 grump原创 2021-04-26 19:29:29 · 145 阅读 · 0 评论 -
力扣--869. 重新排序得到 2 的幂(中等题)
力扣--869. 重新排序得到 2 的幂(中等题)【题目描述】【示例】【比较数字的组成是否一致】【思路】【代码】这题用暴力太复杂了, 看了题解发现一个好方法,所以做个笔记。原题传送门【题目描述】给定正整数 N ,我们按任何顺序(包括原始顺序)将数字重新排序,注意其前导数字不能为零。如果我们可以通过上述方式得到 2 的幂,返回 true;否则,返回 false。【示例】示例 1:输入:1输出:true示例 2:输入:10输出:false示例 3:输入:16输出:true原创 2021-04-23 16:51:18 · 260 阅读 · 0 评论 -
力扣--1726. 同积元组(中等题)
力扣--1726. 同积元组(中等题)【题目描述】【示例】【sort+双指针】【思路】【代码】【用哈希】【思路】【代码】这题用暴力过不去, 看了题解发现大家都用了哈希表,由于对这部分不是很熟悉,以前也没调过库用过,所以做个笔记。原题传送门【题目描述】给你一个由 不同 正整数组成的数组 nums ,请你返回满足 a * b = c * d 的元组 (a, b, c, d) 的数量。其中 a、b、c 和 d 都是 nums 中的元素,且 a != b != c != d 。【示例】示例 1:输入原创 2021-04-19 19:52:43 · 653 阅读 · 0 评论 -
力扣--62. 不同路径 63. 不同路径 II(中等题)
力扣--62. 不同路径(中等题)【题目描述】【示例】【动态规划】【思路】【代码】【找规律】【思路】【代码】典型的动态规划,也可以找规律来做。原题传送门【题目描述】一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。问总共有多少条不同的路径?【示例】示例 3:输入:m = 7, n = 3输出:28示例 4:输入:m = 3, n = 3原创 2021-04-06 16:38:41 · 245 阅读 · 0 评论 -
力扣--199. 二叉树的右视图(中等题)
力扣--199. 二叉树的右视图(中等题)【题目描述】【示例】【解题过程】【思路】【代码】这题比较简单,层序遍历,每次把这层的最后一个放进列表就可以。原题传送门【题目描述】给定一棵二叉树,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。【示例】【解题过程】【思路】层序遍历,每次把这层的最后一个放进列表。【代码】/** * Definition for a binary tree node. * struct TreeNode { * int va原创 2021-03-29 20:56:16 · 204 阅读 · 0 评论 -
力扣--198. 打家劫舍(中等题)--动态规划
力扣--198. 打家劫舍(中等题)--动态规划【题目描述】【示例】【解题过程】【思路】【代码】显然,要用动态规划,和经典0-1背包问题蛮像的感觉。原题传送门【题目描述】你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。给定一个代表每个房屋存放金额的非负整数数组,计算你 不触动警报装置的情况下 ,一夜之内能够偷窃到的最高金额。【示例】示例 1:输入:[1,2原创 2021-03-28 13:24:28 · 179 阅读 · 0 评论 -
力扣--剑指 Offer 60. n个骰子的点数(中等题)--动态规划
力扣--剑指 Offer 60. n个骰子的点数(中等题)--动态规划【题目描述】【示例】【解题过程】【思路】【代码】这题暴力搜索的时间复杂度时O(6^n),肯定会超时,想了很久,忍不住看了解答,发现要用动态规划,大佬从前往后递推不会造成越界,在这里做个笔记。原题传送门【题目描述】把n个骰子扔在地上,所有骰子朝上一面的点数之和为s。输入n,打印出s的所有可能的值出现的概率。你需要用一个浮点数数组返回答案,其中第 i 个元素代表这 n 个骰子所能掷出的点数集合中第 i 小的那个的概率。【示例】示原创 2021-03-27 15:20:37 · 297 阅读 · 0 评论 -
力扣--130. 被围绕的区域(中等题)--从边界扩展
力扣--130. 被围绕的区域(中等题)--从边界扩展【题目描述】【示例】【解题过程】【思路】【代码】这是第一次做关于图的题,果然就懵了,看了官解,然后发现思路并不复杂,唉!原题传送门【题目描述】给你一个 m x n 的矩阵 board ,由若干字符 ‘X’ 和 ‘O’ ,找到所有被 ‘X’ 围绕的区域,并将这些区域里所有的 ‘O’ 用 ‘X’ 填充。【示例】提示:m == board.lengthn == board[i].length1 <= m, n <= 200b原创 2021-03-27 14:17:31 · 282 阅读 · 0 评论 -
力扣--148. 排序链表(中等题)
力扣--148. 排序链表(中等题)【题目描述】【示例】【解题过程】【思路】【代码】这题最开始自己写,超时了,看了官方解答,用的是归并排序。原题传送门【题目描述】给你链表的头结点 head ,请将其按 升序 排列并返回 排序后的链表 。进阶:你可以在 O(n log n) 时间复杂度和常数级空间复杂度下,对链表进行排序吗?【示例】【解题过程】【思路】官解链接归并排序:【代码】class Solution {public: ListNode* sortList(Lis原创 2021-03-26 18:50:08 · 195 阅读 · 0 评论 -
力扣--121~122. 买卖股票的最佳时机(简单题)
力扣--121. 买卖股票的最佳时机(简单题)【题目描述】【示例】【解题过程】【思路】【代码】原题传送门【题目描述】给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回 0【示例】示例 1:输入:[7,1,5,3,6,4]输出:5解释:在第 2 天(股原创 2021-03-24 15:43:38 · 155 阅读 · 0 评论 -
力扣--114. 二叉树展开为链表
力扣--114. 二叉树展开为链表【题目描述】【示例】【解题过程】【思路】【代码】这题用前序遍历的话,递归应该不难,但是官解给出了一个找父节点的方法,空间消耗是O(1),这里做个记录。原题传送门【题目描述】【示例】【解题过程】代码是在官解上加了点自己的注释,思路也是自己根据代码分析的, 官解链接【思路】将原来的右子树与左子树的最右边节点连接将左子树插入到右子树的地方考虑新的右子树的根节点,一直重复直到新的右子树为 null【代码】/** * Definition for a原创 2021-03-24 15:04:11 · 232 阅读 · 0 评论 -
力扣--1423. 可获得的最大点数(中等题)--滑动窗口
力扣--1423. 可获得的最大点数(中等题)--滑动窗口【题目描述】【示例】【解题过程】【思路】【代码】这题做的不是很顺畅,最开始想用贪心,每次加入较大的那个数,但是发现不可以,因为可能会有最小数在大数的外面的情况;后来又想用动规,想了很久没想出来状态转移方程,最后看了解答,发现很多都是用滑动窗口,就也用了。感觉还是这个比较香。原题传送门【题目描述】几张卡牌 排成一行,每张卡牌都有一个对应的点数。点数由整数数组 cardPoints 给出。每次行动,你可以从行的开头或者末尾拿一张卡牌,最终你必须原创 2021-03-21 16:06:47 · 181 阅读 · 0 评论 -
力扣--958. 二叉树的完全性检验(中等题)
力扣--958. 二叉树的完全性检验(中等题)【题目描述】【示例】【解题过程】【思路】【代码】这题比较简单,层序遍历的基础上,做一些判断就可以。原题传送门【题目描述】【示例】【解题过程】【思路】首先进行层序遍历,当发现某个结点有右儿子但没有左儿子,返回false,当发现一个结点少一个子节点,如果flag为0,就将flag标记为1,当有子节点,则需要判断flag是否为1,如果是1,说明前面有空缺,这不是完全的二叉树,返回false。遍历完了之后说明没有发现问题,这是完全二叉树,返回true。原创 2021-03-21 14:35:26 · 205 阅读 · 0 评论 -
力扣--1535. 找出数组游戏的赢家(中等题)
力扣--1535. 找出数组游戏的赢家(中等题)【题目描述】【示例】【解题过程】【思路】【代码】其实仔细想清楚这个过程可以发现,当k比较大时,最后答案就是数组的最大值,因此,不需要真的像题目描述的那样去更换数组中元素的位置,那样肯定会超时(别问我怎么知道的,问就是最开始这样写然后超时了),后来想通了,只需要更改下标进行比较就可以了。原题传送门【题目描述】给你一个由 不同 整数组成的整数数组 arr 和一个整数 k 。每回合游戏都在数组的前两个元素(即 arr[0] 和 arr[1] )之间进行。比原创 2021-03-21 13:25:13 · 249 阅读 · 1 评论 -
力扣--1375. 灯泡开关 III(中等题)
力扣--1375. 灯泡开关 III(中等题)【题目描述】【示例】【解题过程】【思路】【代码】【改进版代码】跑上来还是先直接暴力搜索,用一个数组标记了一下状态,耗时耗空间,后来再做了改进。原题传送门【题目描述】【示例】【解题过程】【思路】先用flag数组,标记所有灯泡的开关情况,然后记录当前打开的最右边的灯泡,每次遍历flag数组,发现right前面有没有打开的灯,就结束遍历。【代码】根据上面的思路,写出了第一个版本的代码:class Solution {public:原创 2021-03-20 17:12:27 · 204 阅读 · 0 评论 -
力扣--1390. 四因数(中等题)--枚举法
力扣--1390. 四因数(中等题)【题目描述】【示例】【解题过程】【思路】【代码】【改进版代码】这题也是找规律。原题传送门【题目描述】给你一个整数数组 nums,请你返回该数组中恰有四个因数的这些整数的各因数之和。如果数组中不存在满足题意的整数,则返回 0 。【示例】示例:输入:nums = [21,4,7]输出:32解释:21 有 4 个因数:1, 3, 7, 214 有 3 个因数:1, 2, 47 有 2 个因数:1, 7答案仅为 21 的所有因数的和。提示:1原创 2021-03-19 20:26:07 · 289 阅读 · 0 评论 -
力扣--二叉树的遍历题
力扣--二叉树的遍历题【前序遍历】【递归法代码】【迭代法代码】【后序遍历】【递归法代码】【迭代法代码】这几题都是关于二叉树的遍历,前序中序后序,虽然比较基础,但还是做个笔记吧。代码都是官解的代码。【前序遍历】144. 二叉树的前序遍历前序遍历官解【递归法代码】/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *r原创 2021-03-19 16:07:36 · 235 阅读 · 0 评论 -
力扣--338. 比特位计数(中等题)
力扣--338. 比特位计数(中等题)【题目描述】【示例】【解题过程】【思路】【代码】【改进版代码】这题也是找规律。原题传送门【题目描述】给定一个非负整数 num。对于 0 ≤ i ≤ num 范围中的每个数字 i ,计算其二进制数中的 1 的数目并将它们作为数组返回。【示例】示例 1:输入: 2输出: [0,1,1]示例 2:输入: 5输出: [0,1,1,2,1,2]进阶:给出时间复杂度为O(n*sizeof(integer))的解答非常容易。但你可以在线性时间O(n原创 2021-03-17 21:52:19 · 169 阅读 · 0 评论 -
力扣--面试题 04.03. 特定深度节点链表(中等题)
力扣--面试题 04.03. 特定深度节点链表(中等题)【题目描述】【示例】【解题过程】【思路】【代码】这题考察了二叉树的遍历和链表,我采用的是层序遍历,利用队列完成。原题传送门【题目描述】给定一棵二叉树,设计一个算法,创建含有某一深度上所有节点的链表(比如,若一棵树的深度为 D,则会创建出 D 个链表)。返回一个包含所有深度的链表的数组。【示例】【解题过程】【思路】借用队列进行层序遍历,在每一层,把结点存入链表,把每个结点的左右子节点存入队列,然后删除该结点。【代码】/** * D原创 2021-03-17 21:01:28 · 145 阅读 · 0 评论 -
力扣--19. 删除链表的倒数第 N 个结点(中等题)
力扣--19. 删除链表的倒数第 N 个结点(中等题)【题目描述】【示例】【解题过程】【思路】【代码】这题如果可以遍历两次链表,就很简单:先统计链表长度,第二遍的时候在进行删除操作。如果只遍历一次,我采用的是快慢指针法。原题传送门【题目描述】【示例】示例 2:输入:head = [1], n = 1输出:[]示例 3:输入:head = [1,2], n = 1输出:[1]提示:链表中结点的数目为 sz1≤sz≤301 \le sz \le 301≤sz≤300≤原创 2021-03-16 17:29:53 · 207 阅读 · 0 评论 -
力扣--16. 最接近的三数之和(中等题)
力扣--16. 最接近的三数之和(中等题)【题目描述】【示例】【解题过程】【思路】【代码】这题和第15题很类似,解题思路也差不多,虽然耗时蛮长的,用了三层循环,但是很快就写出来了还是很开心。思路可以看看之前写的第15题:第15题:三数之和博客第16题传送门【题目描述】给定一个包括 n 个整数的数组 nums 和 一个目标值 target。找出 nums 中的三个整数,使得它们的和与 target 最接近。返回这三个数的和。假定每组输入只存在唯一答案。【示例】示例:输入:nums = [-原创 2021-03-16 16:54:35 · 159 阅读 · 0 评论 -
力扣--17. 电话号码的字母组合(中等题)
力扣--17. 电话号码的字母组合(中等题)【题目描述】【示例】【贪心】【思路】【代码】【题目描述】原题传送门【示例】示例 1:输入:digits = “23”输出:[“ad”,“ae”,“af”,“bd”,“be”,“bf”,“cd”,“ce”,“cf”]示例 2:输入:digits = “”输出:[]示例 3:输入:digits = “2”输出:[“a”,“b”,“c”]提示:0≤digits.length≤40 \le digits.length \le原创 2021-03-15 20:45:09 · 279 阅读 · 0 评论 -
力扣--12. 整数转罗马数字 (中等题)--贪心
力扣--12. 整数转罗马数字(中等题)【题目描述】【示例】【贪心】【思路】【代码】(中等题))【题目描述】原题传送门【示例】示例 1:输入: 3输出: “III”示例 2:输入: 4输出: “IV”]示例 3:输入: 9输出: “IX”]示例 4:输入: 58输出: “LVIII”解释: L = 50, V = 5, III = 3.示例 5:输入: 1994输出: “MCMXCIV”解释: M = 1000, CM = 900, XC =原创 2021-03-14 15:26:45 · 126 阅读 · 0 评论 -
力扣--11. 盛最多水的容器 (中等题)
力扣--11. 盛最多水的容器(中等题)【题目描述】【示例】【暴力】【思路】【代码】【双指针法】【代码】(中等题))【题目描述】给你 n 个非负整数 a1,a2,…,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0) 。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。说明:你不能倾斜容器。原题传送门【示例】示例 2:输入:height = [1,1]输出:1示例 3:输原创 2021-03-14 15:03:24 · 145 阅读 · 0 评论 -
力扣--67. 二进制求和(简单题)
力扣--67. 二进制求和(简单题)【题目描述】【示例】【解答】【思路】【代码】这题思路蛮简单的。【题目描述】给你两个二进制字符串,返回它们的和(用二进制表示)。输入为 非空 字符串且只包含数字 1 和 0。原题传送门【示例】示例 1:输入: a = “11”, b = “1”输出: “100”示例 2:输入: a = “1010”, b = “1011”输出: “10101”提示:每个字符串仅由字符 ‘0’ 或 ‘1’ 组成。1≤a.length,b.length≤原创 2021-03-13 15:29:02 · 177 阅读 · 0 评论 -
力扣--5. 最长回文子串(中等题)
力扣--5. 最长回文子串(中等题)【题目描述】【示例】【解答--中心扩散】【思路】【代码】【看看官解】【中心扩散】【动态规划】【Manacher算法】这是4天前尝试做,然后失败了的一题,当时大概瞄了一眼题解,大多都是动态规划、中心扩散法,当时觉得很难,就决定跳过,今天再做了一次,感觉整体思想和中心扩散法蛮接近的。【题目描述】给你一个字符串 s,找到 s 中最长的回文子串。原题传送门【示例】示例 1:输入:s = “babad”输出:“bab”解释:“aba” 同样是符合题意的答案。原创 2021-03-12 17:43:18 · 163 阅读 · 0 评论 -
力扣--66. 加一 (简单题)
力扣--66. 加一 (简单题)【题目描述】【示例】【解答】【思路】【代码】昨天果然咕咕咕,只背了单词,没有做题。。。今天先来个简单题吧,待会就把之前剩下的坑补上。【题目描述】给定一个由 整数 组成的 非空 数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。原题传送门【示例】示例 1:输入:digits = [1,2,3]输出:[1,2,4]解释:输入数组表示数字 123。示例原创 2021-03-12 16:12:05 · 235 阅读 · 0 评论 -
力扣--6. Z 字形变换(中等题)--找规律
力扣--6. Z 字形变换(中等题)【题目描述】【示例】【解答】【思路】【代码】其实是周三的第三题,打鸡血写了一道中等题,通过画表格,找到规律,虽然解题用了一个半小时,但是自己找到了规律并且把代码敲出来一次过了,而且时空表现都很好,还是很开心hhhh【题目描述】将一个给定字符串 s 根据给定的行数 numRows ,以从上往下、从左到右进行 Z 字形排列。比如输入字符串为 “PAYPALISHIRING” 行数为 3 时,排列如下:之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:原创 2021-03-11 00:15:28 · 227 阅读 · 1 评论 -
力扣--58. 最后一个单词的长度 (简单题)
力扣--58. 最后一个单词的长度【题目描述】【示例】【解答】【思路】【代码】【反思】(简单题) )今天的第二道简单题,先用了暴力搜索法,耗时比较长。【题目描述】给你一个字符串 s,由若干单词组成,单词之间用空格隔开。返回字符串中最后一个单词的长度。如果不存在最后一个单词,请返回 0 。单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。原题传送门【示例】示例 1:输入:s = “Hello World”输出:5示例 2:输入:s = " "输出:0提示:1≤s原创 2021-03-10 21:08:36 · 1030 阅读 · 0 评论 -
力扣--28. 实现 strStr() (简单题)
力扣--28. 实现 strStr【题目描述】【示例】【暴力搜索】【思路】【代码】(简单题) )今天的第二道简单题,先用了暴力搜索法,耗时比较长。【题目描述】实现 strStr() 函数。给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在,则返回 -1。原题传送门【示例】示例 1:输入: haystack = “hello”, needle = “ll”输出: 2示例原创 2021-03-09 21:55:43 · 319 阅读 · 0 评论 -
力扣--27. 移除元素 (简单题)
力扣--27. 移除元素【题目描述】【示例】【双指针】【思路】【代码】(简单题) )昨天尝试了一道经典题:最长回文子串,最后没写出来。周五没课的时候好好盘一盘。今天这题和昨天的那道题(26)很像,遍历一次就好了。【题目描述】给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。说明:为什么返原创 2021-03-09 19:49:06 · 244 阅读 · 0 评论 -
力扣--26. 删除排序数组中的重复项(简单题)--双指针
力扣--26. 删除排序数组中的重复项(简单题)--双指针【题目描述】【示例】【双指针】【思路】【代码】【优化】昨天去了趟医院,回来就不想写题了,空了一天,我检讨。。今天先来一题简单题吧。这题还是比较简单的,但是之前没有想到可以用类似逻辑删除这种方法来处理,还是卡了一会儿,看了别人的解题思路才写的代码。【题目描述】给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成原创 2021-03-08 20:15:18 · 212 阅读 · 0 评论 -
力扣--503. 下一个更大元素 II(中等题)
力扣--503. 下一个更大元素 II【题目描述】【示例】【暴力搜索】)这题直接用的暴力搜索,耗时较长,有空再回来盘一盘其他解法。【题目描述】给定一个循环数组(最后一个元素的下一个元素是数组的第一个元素),输出每个元素的下一个更大元素。数字 x 的下一个更大的元素是按数组遍历顺序,这个数字之后的第一个比它更大的数,这意味着你应该循环地搜索它的下一个更大的数。如果不存在,则输出 -1。原题传送门【示例】示例 1:输入: [1,2,1]输出: [2,-1,2]解释: 第一个 1 的下一个原创 2021-03-06 15:27:40 · 271 阅读 · 0 评论 -
力扣--53. 最大子序和(简单题)--贪心、动规
@[TOC](力扣–53. 最大子序和(简单题)–贪心、动规)这题刚开始的时候,没有什么头绪,想到的都是很复杂的,也不想写,就直接看了解答,才恍然大悟,有这么多种解法,算法课真的是白上了,一年时间全忘了。。。【题目描述】给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。原题传送门【示例】示例 1:输入:nums = [-2,1,-3,4,-1,2,1,-5,4]输出:6解释:连续子数组 [4,-1,2,1] 的和最大,为 6 。示例原创 2021-03-06 15:02:58 · 248 阅读 · 0 评论 -
力扣--3. 无重复字符的最长子串(中等题)--滑动窗口
力扣--3. 无重复字符的最长子串(中等题)--滑动窗口【题目描述】【示例】【思路+代码】这题是比较典型的题目了,写了大约一个小时,比第一次写中等题有进步了,继续加油!【题目描述】给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。原题传送门【示例】示例 1:输入: s = “abcabcbb”输出: 3解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。示例 2:输入: s = “bbbbb”输出: 1解释: 因为无重复字符的最长子串是 “b”,所原创 2021-03-05 13:13:51 · 142 阅读 · 0 评论 -
力扣--2. 两数相加(中等题)
力扣--2. 两数相加(中等题)【题目描述】【示例】【思路+代码】这题还是一个链表题,和昨晚做的合并链表思路差不多,不过有些细节需要注意。这题整体做下来还是比较顺畅,开心!【题目描述】原题传送门【示例】示例 2:输入:l1 = [0], l2 = [0]输出:[0]示例 3:输入:l1 = [9,9,9,9,9,9,9], l2 = [9,9,9,9]输出:[8,9,9,9,0,0,0,1]提示:每个链表中的节点数在范围 [1, 100] 内0 <= Node.v原创 2021-03-05 11:33:48 · 202 阅读 · 0 评论 -
力扣--21. 合并两个有序链表(简单题)-双指针遍历
力扣--21. 合并两个有序链表(简单题)【题目描述】【示例】【思路+代码】这题大二数据结构有做过,所以思路也是很快就有了。大致就是双指针遍历两个链表,边走边比较,把小的那个加到结果链表中,当某一条链到了末尾,直接把另一条链剩下的结点接上去就好了。虽然思路清晰了,但还是因为粗心卡了半个小时,还是要多练题。【题目描述】原题传送门【示例】示例 2:输入:l1 = [], l2 = []输出:[]示例 3:输入:l1 = [], l2 = [0]输出:[0]提示:两个链表的节点原创 2021-03-04 20:45:34 · 153 阅读 · 1 评论 -
力扣--20. 有效的括号(简单题)-堆栈
力扣--20. 有效的括号(简单题)-堆栈【题目描述】【示例】【思路+代码】今天这题比较简单,毕竟学过数据结构,一看思路就有了,但是不太会调库,还需要加强。【题目描述】给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串 s ,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。原题传送门【示例】示例 1:输入:s = “()”输出:true示例 2:输入:s = “()[]{}”输出:true示例原创 2021-03-04 19:46:32 · 210 阅读 · 1 评论 -
力扣--160.相交链表(简单题)
力扣--160.相交链表(简单题)【题目描述】【示例】【思路+代码】有被昨天的中等题打击到,所以老老实实继续做简单题吧。【题目描述】编写一个程序,找到两个单链表相交的起始节点。如下面的两个链表:在节点 c1 开始相交。原题传送门【示例】示例 1:输入:intersectVal = 8, listA = [4,1,8,4,5], listB = [5,0,1,8,4,5], skipA = 2, skipB = 3输出:Reference of the node with value原创 2021-03-03 21:18:01 · 479 阅读 · 2 评论