算法分析
文章平均质量分 56
枸杞地黄丸
英雄不问出处
展开
-
二. 字符串_单词_434. 字符串中的单词数
题目描述统计字符串中的单词个数,这里的单词指的是连续的不是空格的字符。请注意,你可以假定字符串里不包括任何不可打印的字符。示例:输入: “Hello, my name is John”输出: 5解释: 这里的单词是指连续的不是空格的字符,所以 “Hello,” 算作 1 个单词。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/number-of-segments-in-a-string注:这里单词连续指的是,单词中不含有空格即算连续,"原创 2021-12-14 15:02:46 · 245 阅读 · 0 评论 -
二. 字符串_回文串的定义_125. 验证回文串
题目描述给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。说明:本题中,我们将空字符串定义为有效的回文串。示例 1:输入: “A man, a plan, a canal: Panama”输出: true解释:“amanaplanacanalpanama” 是回文串示例 2:输入: “race a car”输出: false解释:“raceacar” 不是回文串来源:力扣(LeetCode)链接:https://leetcode-cn.com/probl原创 2021-12-14 15:02:41 · 280 阅读 · 0 评论 -
二. 字符串_单词_58. 最后一个单词的长度
题目描述给你一个字符串 s,由若干单词组成,单词前后用一些空格字符隔开。返回字符串中最后一个单词的长度。单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。示例 1:输入:s = “Hello World”输出:5示例 2:输入:s = " fly me to the moon "输出:4示例 3:输入:s = “luffy is still joyboy”输出:6来源:力扣(LeetCode)链接:https://leetcode-cn.com/problem原创 2021-12-13 22:35:10 · 114 阅读 · 0 评论 -
二. 字符串_字符串的反转_344. 反转字符串
题目描述编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。示例 1:输入:s = [“h”,“e”,“l”,“l”,“o”]输出:[“o”,“l”,“l”,“e”,“h”]示例 2:输入:s = [“H”,“a”,“n”,“n”,“a”,“h”]输出:[“h”,“a”,“n”,“n”,“a”,“H”]来源:力扣(LeetCode)链接:https://leet原创 2021-12-13 22:34:47 · 109 阅读 · 0 评论 -
二. 字符串_公共前缀_14. 最长公共前缀
题目描述编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。示例 1:输入:strs = [“flower”,“flow”,“flight”]输出:“fl”示例 2:输入:strs = [“dog”,“racecar”,“car”]输出:""解释:输入不存在公共前缀。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/longest-common-prefix纵向扫描这个最长公共子串的问题比较简单,原创 2021-12-06 10:01:37 · 757 阅读 · 0 评论 -
二. 字符串_字符_520. 检测大写字母
题目描述我们定义,在以下情况时,单词的大写用法是正确的:全部字母都是大写,比如 “USA” 。单词中所有字母都不是大写,比如 “leetcode” 。如果单词不只含有一个字母,只有首字母大写, 比如 “Google” 。给你一个字符串 word 。如果大写用法正确,返回 true ;否则,返回 false 。示例 1:输入:word = “USA”输出:true示例 2:输入:word = “FlaG”输出:false来源:力扣(LeetCode)链接:https://leetco原创 2021-12-04 09:53:29 · 196 阅读 · 0 评论 -
一. 数组_前缀和数组_238. 除自身以外数组的乘积
题目描述给你一个长度为 n 的整数数组 nums,其中 n > 1,返回输出数组 output ,其中 output[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积。示例:输入: [1,2,3,4]输出: [24,12,8,6]来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/product-of-array-except-self暴力方法:1.要求nums的各个数相乘,除了当前的序号,并将结果放进当前序号中2.首原创 2021-12-03 22:14:08 · 717 阅读 · 0 评论 -
一. 数组_前缀和数组_304. 二维区域和检索 - 矩阵不可变
题目描述给定一个二维矩阵 matrix,以下类型的多个请求:计算其子矩形范围内元素的总和,该子矩阵的 左上角 为 (row1, col1) ,右下角 为 (row2, col2) 。实现 NumMatrix 类:NumMatrix(int[][] matrix) 给定整数矩阵 matrix 进行初始化int sumRegion(int row1, int col1, int row2, int col2) 返回 左上角 (row1, col1) 、右下角 (row2, col2) 所描述的子矩阵的原创 2021-12-02 20:06:50 · 560 阅读 · 0 评论 -
一. 数组_前缀和数组_303. 区域和检索 - 数组不可变
题目描述给定一个整数数组 nums,求出数组从索引 i 到 j(i ≤ j)范围内元素的总和,包含 i、j 两点。实现 NumArray 类:NumArray(int[] nums) 使用数组 nums 初始化对象int sumRange(int i, int j) 返回数组 nums 从索引 i 到 j(i ≤ j)范围内元素的总和,包含 i、j 两点(也就是 sum(nums[i], nums[i + 1], … , nums[j]))示例:输入:[“NumArray”, “sumRan原创 2021-12-02 10:44:52 · 764 阅读 · 0 评论 -
一. 数组_二维数组变换_289. 生命游戏
题目描述根据 百度百科 ,生命游戏,简称为生命,是英国数学家约翰·何顿·康威在 1970 年发明的细胞自动机。给定一个包含 m × n 个格子的面板,每一个格子都可以看成是一个细胞。每个细胞都具有一个初始状态:1 即为活细胞(live),或 0 即为死细胞(dead)。每个细胞与其八个相邻位置(水平,垂直,对角线)的细胞都遵循以下四条生存定律:如果活细胞周围八个位置的活细胞数少于两个,则该位置活细胞死亡;如果活细胞周围八个位置有两个或三个活细胞,则该位置活细胞仍然存活;如果活细胞周围八个位置有超过原创 2021-12-01 21:21:01 · 1703 阅读 · 0 评论 -
一. 数组_二维数组变换_73. 矩阵置零
题目描述给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。进阶:一个直观的解决方案是使用 O(mn) 的额外空间,但这并不是一个好的解决方案。一个简单的改进方案是使用 O(m + n) 的额外空间,但这仍然不是最好的解决方案。你能想出一个仅使用常量空间的解决方案吗?示例 1:来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/set-matrix-zeroes输入:matri原创 2021-12-01 16:09:48 · 312 阅读 · 0 评论 -
一. 数组_二维数组变换_48. 旋转图像
题目描述给定一个 n × n 的二维矩阵 matrix 表示一个图像。请你将图像顺时针旋转 90 度。你必须在 原地 旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要 使用另一个矩阵来旋转图像。示例 1:来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/rotate-image输入:matrix = [[1,2,3],[4,5,6],[7,8,9]]输出:[[7,4,1],[8,5,2],[9,6,3]]示例 2:输入:matr原创 2021-12-01 10:22:44 · 595 阅读 · 0 评论 -
一. 数组_二维数组变换_566. 重塑矩阵
题目描述在 MATLAB 中,有一个非常有用的函数 reshape ,它可以将一个 m x n 矩阵重塑为另一个大小不同(r x c)的新矩阵,但保留其原始数据。给你一个由二维数组 mat 表示的 m x n 矩阵,以及两个正整数 r 和 c ,分别表示想要的重构的矩阵的行数和列数。重构后的矩阵需要将原始矩阵的所有元素以相同的 行遍历顺序 填充。如果具有给定参数的 reshape 操作是可行且合理的,则输出新的重塑矩阵;否则,输出原始矩阵。来源:力扣(LeetCode)链接:https://le原创 2021-11-30 16:23:06 · 138 阅读 · 0 评论 -
一. 数组_特定顺序遍历二维数组_59. 螺旋矩阵 II
题目描述示例 1:输入:n = 3输出:[[1,2,3],[8,9,4],[7,6,5]]示例 2:输入:n = 1输出:[[1]]生成螺旋顺序的数组和遍历螺旋顺时针的数组的方法是相同的,不同的是,上一种是访问对应的值,该方法是将对应的位置,按照顺序进行存储1.首先使用flag标识是否访问过该元素2.ret保存输出的值3.这里遍历的方式,首先按照一个方向遍历,如果当前方向已经遍历完成,则换一个方向遍历,当遍历完成时,那么结束注:这里有所不同,这里加不加flag矩阵都是可以的,因为这里原创 2021-11-30 10:57:45 · 265 阅读 · 0 评论 -
一. 数组_特定顺序遍历二维数组_54. 螺旋矩阵
题目描述给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。示例 1:输入:matrix = [[1,2,3],[4,5,6],[7,8,9]]输出:[1,2,3,6,9,8,7,4,5]示例 2:输入:matrix = [[1,2,3,4],[5,6,7,8],[9,10,11,12]]输出:[1,2,3,4,8,12,11,10,9,5,6,7]首先,这个这个需要很多辅助变量的1.首先初始化一个num,这个的作用是当前行和当前列遍历元素的原创 2021-11-30 10:53:28 · 682 阅读 · 0 评论 -
一. 数组_特定顺序遍历二维数组_498. 对角线遍历
题目描述给你一个大小为 m x n 的矩阵 mat ,请以对角线遍历的顺序,用一个数组返回这个矩阵中的所有元素。示例 1:输入:mat = [[1,2,3],[4,5,6],[7,8,9]]输出:[1,2,4,7,5,3,6,8,9]示例 2:输入:mat = [[1,2],[3,4]]输出:[1,2,3,4]来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/diagonal-traverse首先通过观看可以看出来打印对角线其实只要找原创 2021-11-29 22:28:26 · 403 阅读 · 0 评论 -
一. 数组_数组的旋转_396. 旋转函数
题目描述给定一个长度为 n 的整数数组 A 。假设 Bk 是数组 A 顺时针旋转 k 个位置后的数组,我们定义 A 的“旋转函数” F 为:F(k) = 0 * Bk[0] + 1 * Bk[1] + … + (n-1) * Bk[n-1]。计算F(0), F(1), …, F(n-1)中的最大值。注意:可以认为 n 的值小于 105。示例:A = [4, 3, 2, 6]F(0) = (0 * 4) + (1 * 3) + (2 * 2) + (3 * 6) = 0 + 3 + 4 +原创 2021-11-27 12:21:21 · 392 阅读 · 0 评论 -
一. 数组_数组的旋转_189. 轮转数组
题目描述给你一个数组,将数组中的元素向右轮转 k 个位置,其中 k 是非负数。示例 1:输入: nums = [1,2,3,4,5,6,7], k = 3输出: [5,6,7,1,2,3,4]解释:向右轮转 1 步: [7,1,2,3,4,5,6]向右轮转 2 步: [6,7,1,2,3,4,5]向右轮转 3 步: [5,6,7,1,2,3,4]示例 2:输入:nums = [-1,-100,3,99], k = 2输出:[3,99,-1,-100]解释:向右轮转 1 步: [99原创 2021-11-26 22:34:55 · 505 阅读 · 0 评论 -
一. 数组_二维数组及滚动数组_419. 甲板上的战舰
题目描述给定一个二维的甲板, 请计算其中有多少艘战舰。 战舰用 'X’表示,空位用 '.'表示。 你需要遵守以下规则:给你一个有效的甲板,仅由战舰或者空位组成。战舰只能水平或者垂直放置。换句话说,战舰只能由 1xN (1 行, N 列)组成,或者 Nx1 (N 行, 1 列)组成,其中N可以是任意大小。两艘战舰之间至少有一个水平或垂直的空位分隔 - 即没有相邻的战舰。示例 :X…X…X…X在上面的甲板中有2艘战舰。无效样例 :…XXXXX…X你不会收到这样的无效甲板 - 因为战舰原创 2021-11-25 10:25:56 · 145 阅读 · 0 评论 -
一. 数组_二维数组及滚动数组_598. 范围求和 II
题目描述给定一个初始元素全部为 0,大小为 m*n 的矩阵 M 以及在 M 上的一系列更新操作。操作用二维数组表示,其中的每个操作用一个含有两个正整数 a 和 b 的数组表示,含义是将所有符合 0 <= i < a 以及 0 <= j < b 的元素 M[i][j] 的值都增加 1。在执行给定的一系列操作后,你需要返回矩阵中含有最大整数的元素个数。示例 1:输入:m = 3, n = 3operations = [[2,2],[3,3]]输出: 4解释:初始状态,原创 2021-11-24 16:30:15 · 74 阅读 · 0 评论 -
一. 数组_数组的改变、移动_665. 非递减数列
题目描述给你一个长度为 n 的整数数组,请你判断在 最多 改变 1 个元素的情况下,该数组能否变成一个非递减数列。我们是这样定义一个非递减数列的: 对于数组中任意的 i (0 <= i <= n-2),总满足 nums[i] <= nums[i + 1]。示例 1:输入: nums = [4,2,3]输出: true解释: 你可以通过把第一个4变成1来使得它成为一个非递减数列。示例 2:输入: nums = [4,2,1]输出: false解释: 你不能在只改变一个元素原创 2021-11-21 21:21:52 · 261 阅读 · 0 评论 -
一. 数组_二维数组及滚动数组_661. 图片平滑器
题目描述包含整数的二维矩阵 M 表示一个图片的灰度。你需要设计一个平滑器来让每一个单元的灰度成为平均灰度 (向下舍入) ,平均灰度的计算是周围的8个单元和它本身的值求平均,如果周围的单元格不足八个,则尽可能多的利用它们。示例 1:输入:[[1,1,1],[1,0,1],[1,1,1]]输出:[[0, 0, 0],[0, 0, 0],[0, 0, 0]]解释:对于点 (0,0), (0,2), (2,0), (2,2): 平均(3/4) = 平均(0.75) = 0对于点 (0,1)原创 2021-11-21 20:38:45 · 433 阅读 · 0 评论 -
一. 数组_二维数组及滚动数组_119. 杨辉三角 II
题目描述给定一个非负索引 rowIndex,返回「杨辉三角」的第 rowIndex 行。在「杨辉三角」中,每个数是它左上方和右上方的数的和。示例 1:输入: rowIndex = 3输出: [1,3,3,1]示例 2:输入: rowIndex = 0输出: [1]示例 3:输入: rowIndex = 1输出: [1,1]来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/pascals-triangle-ii这里创建杨辉三角的原创 2021-11-20 20:33:48 · 533 阅读 · 0 评论 -
一. 数组_二维数组及滚动数组_118. 杨辉三角
题目描述给定一个非负整数 numRows,生成「杨辉三角」的前 numRows 行。在「杨辉三角」中,每个数是它左上方和右上方的数的和。示例 1:输入: numRows = 5输出: [[1],[1,1],[1,2,1],[1,3,3,1],[1,4,6,4,1]]示例 2:输入: numRows = 1输出: [[1]]来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/pascals-triangle著作权归领扣网络所有。商业转原创 2021-11-20 18:47:53 · 99 阅读 · 0 评论 -
一. 数组_数组的改变、移动_283. 移动零
问题描述给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。示例:输入: [0,1,0,3,12]输出: [1,3,12,0,0]来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/move-zeroes冒泡移动法:1.这里的思路是,首先找到对应的零元素的下标,之后将对应的零元素一个一个交换的方式移动到最后的位置,因为这样不会打乱非零顺序2.这里因为每次都会将一个0移动到最后一个元素,那么每移动一次原创 2021-11-20 16:24:13 · 90 阅读 · 0 评论 -
一、数组_统计数组中的元素_274. H 指数
题目描述给你一个整数数组 citations ,其中 citations[i] 表示研究者的第 i 篇论文被引用的次数。计算并返回该研究者的 h 指数。h 指数的定义:h 代表“高引用次数”(high citations),一名科研人员的 h 指数是指他(她)的 (n 篇论文中)总共有 h 篇论文分别被引用了至少 h 次。且其余的 n - h 篇论文每篇被引用次数 不超过 h 次。例如:某人的 h 指数是 20,这表示他已发表的论文中,每篇被引用了至少 20 次的论文总共有 20 篇。提示:如果 h原创 2021-11-18 20:48:30 · 152 阅读 · 0 评论 -
一、数组_数组的改变、移动_453. 最小操作次数使数组元素相等
题目描述给你一个长度为 n 的整数数组,每次操作将会使 n - 1 个元素增加 1 。返回让数组所有元素相等的最小操作次数。示例 1:输入:nums = [1,2,3]输出:3解释:只需要3次操作(注意每次操作会增加两个元素的值):[1,2,3] => [2,3,3] => [3,4,3] => [4,4,4]示例 2:输入:nums = [1,1,1]输出:0来源:力扣(LeetCode)链接:https://leetcode-cn.com/probl原创 2021-11-18 15:34:50 · 564 阅读 · 0 评论 -
一、数组_统计数组中的元素_41. 缺失的第一个正数
题目描述给你一个未排序的整数数组 nums ,请你找出其中没有出现的最小的正整数。请你实现时间复杂度为 O(n) 并且只使用常数级别额外空间的解决方案。示例 1:输入:nums = [1,2,0]输出:3示例 2:输入:nums = [3,4,-1,1]输出:2示例 3:输入:nums = [7,8,9,11,12]输出:1来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/first-missing-positivehashma原创 2021-11-16 15:35:01 · 417 阅读 · 0 评论 -
一、数组_统计数组中的元素_442. 数组中重复的数据
题目描述给定一个整数数组 a,其中1 ≤ a[i] ≤ n (n为数组长度), 其中有些元素出现两次而其他元素出现一次。找到所有出现两次的元素。你可以不用到任何额外空间并在O(n)时间复杂度内解决这个问题吗?示例:输入:[4,3,2,7,8,2,3,1]输出:[2,3]来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/find-all-duplicates-in-an-array原地修改法1.本题还是448的一个思路,遍历nums的原创 2021-11-16 10:38:49 · 163 阅读 · 0 评论 -
一、数组_统计数组中的元素_448. 找到所有数组中消失的数字
题目描述给你一个含 n 个整数的数组 nums ,其中 nums[i] 在区间 [1, n] 内。请你找出所有在 [1, n] 范围内但没有出现在 nums 中的数字,并以数组的形式返回结果。示例 1:输入:nums = [4,3,2,7,8,2,3,1]输出:[5,6]示例 2:输入:nums = [1,1]输出:[2]来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/find-all-numbers-disappeared-in-an原创 2021-11-16 09:48:59 · 77 阅读 · 0 评论 -
一、数组_统计数组中的元素_697.数组的度
题目描述给定一个非空且只包含非负数的整数数组 nums,数组的度的定义是指数组里任一元素出现频数的最大值。你的任务是在 nums 中找到与 nums 拥有相同大小的度的最短连续子数组,返回其长度。示例 1:输入:[1, 2, 2, 3, 1]输出:2解释:输入数组的度是2,因为元素1和2的出现频数最大,均为2.连续子数组里面拥有相同度的有如下所示:[1, 2, 2, 3, 1], [1, 2, 2, 3], [2, 2, 3, 1], [1, 2, 2], [2, 2, 3], [2, 2原创 2021-11-15 10:54:48 · 76 阅读 · 0 评论 -
一、数组_统计数组中的元素_645. 错误的集合
题目描述集合 s 包含从 1 到 n 的整数。不幸的是,因为数据错误,导致集合里面某一个数字复制了成了集合里面的另外一个数字的值,导致集合 丢失了一个数字 并且 有一个数字重复 。给定一个数组 nums 代表了集合 S 发生错误后的结果。请你找出重复出现的整数,再找到丢失的整数,将它们以数组的形式返回。示例 1:输入:nums = [1,2,2,4]输出:[2,3]示例 2:输入:nums = [1,1]输出:[1,2]来源:力扣(LeetCode)链接:https://leetcod原创 2021-11-14 16:47:52 · 364 阅读 · 0 评论 -
一、数组_数组的遍历_628. 三个数的最大乘积
题目描述给你一个整型数组 nums ,在数组中找出由三个数组成的最大乘积,并输出这个乘积。示例 1:输入:nums = [1,2,3]输出:6示例 2:输入:nums = [1,2,3,4]输出:24示例 3:输入:nums = [-1,-2,-3]输出:-6来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/maximum-product-of-three-numbers暴力搜索法1.这里只要穷举所有的情况,并且记录最大值。2原创 2021-11-14 11:23:25 · 780 阅读 · 0 评论 -
一、数组_数组的遍历_414. 第三大的数
题目描述给你一个非空数组,返回此数组中 第三大的数 。如果不存在,则返回数组中最大的数。示例 1:输入:[3, 2, 1]输出:1解释:第三大的数是 1 。示例 2:输入:[1, 2]输出:2解释:第三大的数不存在, 所以返回最大的数 2 。示例 3:输入:[2, 2, 3, 1]输出:1解释:注意,要求返回第三大的数,是指在所有不同数字中排第三大的数。此例中存在两个值为 2 的数,它们都排第二。在所有不同数字中排第三大的数为 1 。来源:力扣(LeetCode)链接:htt原创 2021-11-13 21:44:28 · 4032 阅读 · 0 评论 -
一. 数组_数组的遍历_495. 提莫攻击
题目描述在《英雄联盟》的世界中,有一个叫 “提莫” 的英雄。他的攻击可以让敌方英雄艾希(编者注:寒冰射手)进入中毒状态。当提莫攻击艾希,艾希的中毒状态正好持续 duration 秒。正式地讲,提莫在 t 发起发起攻击意味着艾希在时间区间 [t, t + duration - 1](含 t 和 t + duration - 1)处于中毒状态。如果提莫在中毒影响结束 前 再次攻击,中毒状态计时器将会 重置 ,在新的攻击之后,中毒影响将会在 duration 秒后结束。给你一个 非递减 的整数数组 tim原创 2021-11-13 14:51:21 · 111 阅读 · 0 评论 -
一、数组_数组的遍历_485.最大连续 1 的个数
题目描述给定一个二进制数组, 计算其中最大连续 1 的个数。示例:输入:[1,1,0,1,1,1]输出:3解释:开头的两位和最后的三位都是连续 1 ,所以最大连续 1 的个数是 3.来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/max-consecutive-ones顺序循环解法11.按个遍历数组每个元素,若是1则len++,否则len=02.记录中间最大1的长度3.如果当前长度超过最大长度,那么更新maxlen不足之处1.判原创 2021-11-13 11:14:41 · 461 阅读 · 0 评论 -
力扣4. 寻找两个正序数组的中位数
题目描述:给定两个大小分别为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。请你找出并返回这两个正序数组的 中位数 。算法的时间复杂度应该为 O(log (m+n)) 。示例 1:输入:nums1 = [1,3], nums2 = [2]输出:2.00000解释:合并数组 = [1,2,3] ,中位数 2示例 2:输入:nums1 = [1,2], nums2 = [3,4]输出:2.50000解释:合并数组 = [1,2,3,4] ,中位数 (2 + 3) / 2 =原创 2021-11-12 09:14:15 · 435 阅读 · 0 评论 -
5.最长回文子串
题目描述给你一个字符串 s,找到 s 中最长的回文子串。示例 1:输入:s = “babad”输出:“bab”解释:“aba” 同样是符合题意的答案。示例 2:输入:s = “cbbd”输出:“bb”示例 3:输入:s = “a”输出:“a”示例 4:输入:s = “ac”输出:“a”提示:1 <= s.length <= 1000s 仅由数字和英文字母(大写和/或小写)组成来源:力扣(LeetCode)链接:https://leetcode-cn.com/原创 2021-11-12 09:17:57 · 228 阅读 · 0 评论 -
力扣3. 无重复字符的最长子串
题目描述给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: s = “abcabcbb”输出: 3解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。示例 2:输入: s = “bbbbb”输出: 1解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。示例 3:输入: s = “pwwkew”输出: 3解释: 因为无重复字符的最长子串是 “wke”,所以其长度为 3。请注意,你的答案必须是 子串 的长度,“pwke” 是原创 2021-10-12 15:30:47 · 269 阅读 · 0 评论 -
力扣2. 两数相加
题目描述给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0 开头。图片和题目来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/add-two-numbers解题思路两个数字,通过链表存储每个数字,以倒序的方式存储,这样做的好处是,倒序直接相加即可,只需要考虑进位就行。如果原创 2021-10-07 11:40:26 · 124 阅读 · 0 评论