![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LeetCode
文章平均质量分 86
多问为什么,坚持跑步
这个作者很懒,什么都没留下…
展开
-
130. 被围绕的区域
130. 被围绕的区域给定一个二维的矩阵,包含 ‘X’ 和 ‘O’(字母 O)。找到所有被 ‘X’ 围绕的区域,并将这些区域里所有的 ‘O’ 用 ‘X’ 填充。示例:X X X XX O O XX X O XX O X X运行你的函数后,矩阵变为:X X X XX X X XX X X XX O X X解释:被围绕的区间不会存在于边界上,换句话说,任何边界上的 ‘O’ 都不会被填充为 ‘X’。 任何不在边界上,或不与边界上的 ‘O’ 相连的 ‘O’ 最终都会被填充为 ‘X’。如果原创 2020-10-05 12:05:04 · 73 阅读 · 0 评论 -
leetcode_733_图像渲染
733_图像渲染有一幅以二维整数数组表示的图画,每一个整数表示该图画的像素值大小,数值在 0 到 65535 之间。给你一个坐标 (sr, sc) 表示图像渲染开始的像素值(行 ,列)和一个新的颜色值 newColor,让你重新上色这幅图像。为了完成上色工作,从初始坐标开始,记录初始坐标的上下左右四个方向上像素值与初始坐标相同的相连像素点,接着再记录这四个方向上符合条件的像素点与他们对应四个方向上像素值与初始坐标相同的相连像素点,……,重复该过程。将所有有记录的像素点的颜色值改为新的颜色值。最后返回原创 2020-10-02 11:52:13 · 187 阅读 · 0 评论 -
39. 组合总和
39. 组合总和给定一个无重复元素的数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。candidates 中的数字可以无限制重复被选取。说明:所有数字(包括 target)都是正整数。解集不能包含重复的组合。示例 1:输入:candidates = [2,3,6,7], target = 7,所求解集为:[[7],[2,2,3]]示例 2:输入:candidates = [2,3,5], targe原创 2020-09-22 09:48:09 · 274 阅读 · 0 评论 -
78. 子集_39. 组合总和_46. 全排列
78. 子集给定一组不含重复元素的整数数组 nums,返回该数组所有可能的子集(幂集)。说明:解集不能包含重复的子集。示例:输入: nums = [1,2,3]输出:[[3],[1],[2],[1,2,3],[1,3],[2,3],[1,2],[]]class Solution { public List<List<Integer>> subsets(int[] nums) { // 第一层,可选3个 // 第原创 2020-09-22 09:47:16 · 115 阅读 · 0 评论 -
leetcode_78. 子集
78. 子集给定一组不含重复元素的整数数组 nums,返回该数组所有可能的子集(幂集)。说明:解集不能包含重复的子集。示例:输入: nums = [1,2,3]输出:[[3],[1],[2],[1,2,3],[1,3],[2,3],[1,2],[]]求子集是全集的一部分:讨论全集的每一个元素是否在子集中,求所有子集。转换为代码:每一个数选与不选。也可以理解为全集的每一个元素在不在子集中。每一步:选不选全集中的数叶子节点就是答案,为了得到叶子节点,可以使用深度优先搜索或原创 2020-09-20 10:39:11 · 98 阅读 · 0 评论 -
leetcode_56. 合并区间
56. 合并区间给出一个区间的集合,请合并所有重叠的区间。示例 1:输入: intervals = [[1,3],[2,6],[8,10],[15,18]]输出: [[1,6],[8,10],[15,18]]解释: 区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6].示例 2:输入: intervals = [[1,4],[4,5]]输出: [[1,5]]解释: 区间 [1,4] 和 [4,5] 可被视为重叠区间。贪心算法 // 一个一个遍历 // max原创 2020-09-08 17:26:02 · 106 阅读 · 0 评论 -
leetcode_55. 跳跃游戏
55. 跳跃游戏给定一个非负整数数组,你最初位于数组的第一个位置。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个位置。示例 1:输入: [2,3,1,1,4]输出: true解释: 我们可以先跳 1 步,从位置 0 到达 位置 1, 然后再从位置 1 跳 3 步到达最后一个位置。示例 2:输入: [3,2,1,0,4]输出: false解释: 无论怎样,你总会到达索引为 3 的位置。但该位置的最大跳跃长度是 0 , 所以你永远不可能到达最后一个位置。最原创 2020-09-08 15:28:07 · 116 阅读 · 0 评论 -
leetcode_66. 加一
leetcode_66. 加一给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。示例 1:输入: [1,2,3]输出: [1,2,4]解释: 输入数组表示数字 123。示例 2:输入: [4,3,2,1]输出: [4,3,2,2]解释: 输入数组表示数字 4321。方法一:扩容只会有一种情况:全是9,所以如果有扩容的情况,则只需重新生成一个长度为len原创 2020-09-08 11:34:36 · 127 阅读 · 0 评论 -
leetcode_13. 罗马数字转整数
13. 罗马数字转整数罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。字符 数值I 1V 5X 10L 50C 100D 500M 1000例如, 罗马数字 2 写做 II ,即为两个并列的 1。12 写做 XII ,即为 X + II 。 27 写做 XXVII, 即为 XX + V原创 2020-09-02 15:01:29 · 124 阅读 · 0 评论 -
227. 基本计算器 II
227. 基本计算器 II实现一个基本的计算器来计算一个简单的字符串表达式的值。字符串表达式仅包含非负整数,+, - ,*,/ 四种运算符和空格 。 整数除法仅保留整数部分。示例 1:输入: “3+2*2”输出: 7示例 2:输入: " 3/2 "输出: 1示例 3:输入: " 3+5 / 2 "输出: 5总思路:把 *, / , - 都先计算出来,放到stack里,最后把stack里的数全部相加就是结果。 // 遍历s的每个字符,如果是数字,和后面继续组成数字tempN原创 2020-08-31 11:27:01 · 165 阅读 · 0 评论 -
387. 字符串中的第一个唯一字符_451. 根据字符出现频率排序
387. 字符串中的第一个唯一字符给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。示例:s = “leetcode”返回 0s = “loveleetcode”返回 2 // 遍历字符,用hashmap存储字符和位置 // 但无法知道那个是第一个 // 换个思路。用hashmap存储字符和频率 // 再从头开始遍历数组,map得到的频率是1就返回i // 因为是从头遍历到尾,所以返回的肯定是第一个class So原创 2020-08-27 17:02:14 · 142 阅读 · 0 评论 -
49. 字母异位词分组_242. 有效的字母异位词_438. 找到字符串中所有字母异位词
49. 字母异位词分组给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。示例:输入: [“eat”, “tea”, “tan”, “ate”, “nat”, “bat”]输出:[[“ate”,“eat”,“tea”],[“nat”,“tan”],[“bat”]]说明:所有输入均为小写字母。不考虑答案输出的顺序。怎么区分,怎么分类,字符,字符个数都相等的,才叫一类,注意,出现的是字符串,依次访问字符串,还是不知道怎么区分。思路原创 2020-08-27 15:26:39 · 144 阅读 · 0 评论 -
76.最小覆盖子串_567.字符串排列_438.找所有字母异位词_3.最长无重复子串_209. 长度最小的子数组
76. 最小覆盖子串给你一个字符串 S、一个字符串 T 。请你设计一种算法,可以在 O(n) 的时间复杂度内,从字符串 S 里面找出:包含 T 所有字符的最小子串。示例:输入:S = “ADOBECODEBANC”, T = “ABC”输出:“BANC”...原创 2020-08-21 23:25:19 · 130 阅读 · 0 评论 -
leetcode_91. 解码方法
91. 解码方法一条包含字母 A-Z 的消息通过以下方式进行了编码:‘A’ -> 1‘B’ -> 2…‘Z’ -> 26给定一个只包含数字的非空字符串,请计算解码方法的总数。示例 1:输入: “12”输出: 2解释: 它可以解码为 “AB”(1 2)或者 “L”(12)。示例 2:输入: “226”输出: 3解释: 它可以解码为 “BZ” (2 26), “VF” (22 6), 或者 “BBF” (2 2 6) 。状态dp[i]: 到位置i为止的编码数原创 2020-08-17 11:07:11 · 104 阅读 · 0 评论 -
leetcode_44. 通配符匹配_1143. 最长公共子序列_718. 最长重复子数组 _300.最长上升子序列_
44. 通配符匹配给定一个字符串 (s) 和一个字符模式 § ,实现一个支持 ‘?’ 和 ‘*’ 的通配符匹配。‘?’ 可以匹配任何单个字符。‘*’ 可以匹配任意字符串(包括空字符串)。两个字符串完全匹配才算匹配成功。说明:s 可能为空,且只包含从 a-z 的小写字母。p 可能为空,且只包含从 a-z 的小写字母,以及字符 ? 和 *。示例 1:输入:s = “aa”p = “a”输出: false解释: “a” 无法匹配 “aa” 整个字符串。示例 2:输入:s = “aa原创 2020-08-16 10:45:27 · 154 阅读 · 0 评论 -
leetcode718. 最长重复子数组
718. 最长重复子数组给两个整数数组 A 和 B ,返回两个数组中公共的、长度最长的子数组的长度。示例:输入:A: [1,2,3,2,1]B: [3,2,1,4,7]输出:3解释:长度最长的公共子数组是 [3, 2, 1] 。class Solution { public int findLength(int[] A, int[] B) { int n = A.length, m = B.length; int[][] dp = new int[n原创 2020-08-15 21:47:10 · 75 阅读 · 0 评论 -
leetcode_230_二叉搜索树中第K小的元素_94. 二叉树的中序遍历_671. 二叉树中第二小的节点
leetcode_230_二叉搜索树中第K小的元素给定一个二叉搜索树,编写一个函数 kthSmallest 来查找其中第 k 个最小的元素。说明:你可以假设 k 总是有效的,1 ≤ k ≤ 二叉搜索树元素个数。示例 1:输入: root = [3,1,4,null,2], k = 13/ 1 42输出: 1示例 2:输入: root = [5,3,6,2,4,null,null,1], k = 35/ 3 6/ 2 4/1输出: 3中序遍历,依次弹出原创 2020-08-15 21:44:45 · 1481 阅读 · 1 评论 -
leetcode_59. 螺旋矩阵 II
59. 螺旋矩阵 II给定一个正整数 n,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的正方形矩阵。示例:输入: 3输出:[[ 1, 2, 3 ],[ 8, 9, 4 ],[ 7, 6, 5 ]]大佬讲解class Solution { public int[][] generateMatrix(int n) { int l = 0, r = n - 1, t = 0, b = n - 1; int[][] mat = ne转载 2020-08-15 11:48:44 · 84 阅读 · 0 评论 -
剑指 Offer 51. 数组中的逆序对_leetcode315. 计算右侧小于当前元素的个数
剑指 Offer 51. 数组中的逆序对在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数。示例 1:输入: [7,5,6,4]输出: 5暴力,双重for循环优化:假设数组是排序的,那我就可以直接根据数组的元素下标知道该元素后面有多少个小于它的元素,eg:即利用数组的有序性,可以O(1)的知道元素后面存在多少有序数对。利用递归排序的思想,可以一边排序,一边计算有序数对。先不断分割,分割成只有两原创 2020-08-12 09:09:34 · 118 阅读 · 0 评论 -
双指针总结
遍历数组找到满足条件的和字符串匹配移动,反转字符,链表节点原创 2020-08-10 15:11:20 · 292 阅读 · 0 评论 -
leetcode_4_寻找两个正序数组的中位数
leetcode_4_寻找两个正序数组的中位数大佬讲解地址思路中位数前面小于中位数的元素个数 = 中位数后面大于中位数的个数。寻找一个有序数组中的中位数,返回数组的中间位置元素就好了,奇数偶数。寻找两个有序数组中的中位数,关键是找到分割线,1.使得分割线前面的元素的个数 = 分割线后面元素的个数; 且:2.左边的元素 <= 右边的元素;先看在分割好的数组中找中位数:偶数时:红线左边的元素个数 = 红线右边元素的个数中位数 = (红线左边的最大值 + 红线右边的最小值) / 2 =原创 2020-08-08 11:37:19 · 108 阅读 · 0 评论 -
leetcode_50_Pow(x, n)
50. Pow(x, n)实现 pow(x, n) ,即计算 x 的 n 次幂函数。示例 1:输入: 2.00000, 10输出: 1024.00000示例 2:输入: 2.10000, 3输出: 9.26100示例 3:输入: 2.00000, -2输出: 0.25000解释: 2-2 = 1/22 = 1/4 = 0.25x ^ n — 3 ^ 7777 = 100 1101 2 ^ 6 + 2 ^3 + 2 ^ 2 + 2 ^ 0 = 64 + 8 + 4 + 1原创 2020-08-07 09:58:53 · 85 阅读 · 0 评论 -
leetcode_69. x 的平方根
leetcode_69. x 的平方根实现 int sqrt(int x) 函数。计算并返回 x 的平方根,其中 x 是非负整数。由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去。示例 1:输入: 4输出: 2示例 2:输入: 8输出: 2说明: 8 的平方根是 2.82842…,由于返回类型是整数,小数部分将被舍去。二分排除法,mid*mid <>=? x,来找到mid。注意边界,什么情况绝对要排除从而二分注意细节:特殊情况:x = 0时, if(x原创 2020-08-06 21:03:40 · 92 阅读 · 0 评论 -
leetcode_20_有效括号
总结为null,就用一个默认的替代思想若stack为null,弹出的字符默认用“#”代替,两数相加也是同样的思想,若链表已经到达null, 元素默认以0代表;怎么减少if语句,判断是否是某一个值,将值存进map中,是否在map中,若在,则是;匹配用map20. 有效的括号给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。原创 2020-08-05 22:30:44 · 95 阅读 · 0 评论 -
leetcode_2_两数相加
总结易错while( || ) 里面要增加null判断,防止l1 / l2 为null,l1 / l2 .next报错;相加取尾数,加上进位,%取余, / 取进位;为null, 则0上;技巧:需要返回一个新链表的,哑结点pre = new ListNode(-1); List curr = prev; curr.next不断去添加新节点2. 两数相加给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。如原创 2020-08-05 21:13:38 · 110 阅读 · 0 评论 -
leetcode_35. 搜索插入位置_278. 第一个错误的版本
35. 搜索插入位置给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。你可以假设数组中无重复元素。示例 1:输入: [1,3,5,6], 5输出: 2示例 2:输入: [1,3,5,6], 2输出: 1示例 3:输入: [1,3,5,6], 7输出: 4示例 4:输入: [1,3,5,6], 0输出: 0判断nums[mid]和target的关系,还要判断nums[mid-1]和nums[mid+1]与t原创 2020-08-04 17:48:42 · 111 阅读 · 0 评论 -
leetcode_162. 寻找峰值_852. 山脉数组的峰顶索引_153. 寻找旋转排序数组中的最小值_33. 搜索旋转排序数组
总结:162 看似简答,却很不容易想到:即使开始 l = 0, r = nums.length - 1; while里还是l < r;因为不是要全部查看所有元素,当nums[l] == nums[r]时,就是答案;比较判断是 nums[mid] 和 nums[mid+1], 目的是为了判断此时mid处于局部递减区域还是局部递增区域;若nums[mid] < nums[mid+1] , 处于局部递增,峰值在后面若nums[mid] > nums[mid+1] , 处于原创 2020-08-03 16:13:10 · 169 阅读 · 0 评论 -
leetcode_343. 整数拆分
leetcode_343. 整数拆分给定一个正整数 n,将其拆分为至少两个正整数的和,并使这些整数的乘积最大化。 返回你可以获得的最大乘积。示例 1:输入: 2输出: 1解释: 2 = 1 + 1, 1 × 1 = 1。示例 2:输入: 10输出: 36解释: 10 = 3 + 3 + 4, 3 × 3 × 4 = 36。说明: 你可以假设 n 不小于 2 且不大于 58。 // 动态规划,自底向上 // 2: 1,1 // 3: 1,2 // 4:原创 2020-08-03 10:39:27 · 87 阅读 · 0 评论 -
leetcode_295. 数据流的中位数
leetcode_295. 数据流的中位数中位数是有序列表中间的数。如果列表长度是偶数,中位数则是中间两个数的平均值。例如,[2,3,4] 的中位数是 3[2,3] 的中位数是 (2 + 3) / 2 = 2.5设计一个支持以下两种操作的数据结构:void addNum(int num) - 从数据流中添加一个整数到数据结构中。double findMedian() - 返回目前所有元素的中位数。示例:addNum(1)addNum(2)findMedian() -> 1.5a原创 2020-08-02 22:27:28 · 133 阅读 · 0 评论 -
443. 压缩字符串_38. 外观数列
总结双指针统计字符串,数组中相邻字符出现的个数443. 压缩字符串给定一组字符,使用原地算法将其压缩。压缩后的长度必须始终小于或等于原数组长度。数组的每个元素应该是长度为1 的字符(不是 int 整数类型)。在完成原地修改输入数组后,返回数组的新长度。进阶:你能否仅使用O(1) 空间解决问题?示例 1:输入:[“a”,“a”,“b”,“b”,“c”,“c”,“c”]输出:返回 6 ,输入数组的前 6 个字符应该是:[“a”,“2”,“b”,“2”,“c”,“3”]说明:“a原创 2020-08-02 17:25:21 · 181 阅读 · 0 评论 -
217. 存在重复元素_219. 存在重复元素 II_220. 存在重复元素 III
217. 存在重复元素给定一个整数数组,判断是否存在重复元素。如果任意一值在数组中出现至少两次,函数返回 true 。如果数组中每个元素都不相同,则返回 false 。示例 1:输入: [1,2,3,1]输出: true示例 2:输入: [1,2,3,4]输出: false示例 3:输入: [1,1,1,3,3,4,3,2,4,2]输出: trueclass Solution { public boolean containsDuplicate(int[] nums) {原创 2020-08-02 16:16:08 · 113 阅读 · 0 评论 -
计算质数,丑数II,完全平方数,合并k个排序链表, 丑数,
总结统计数字n以内的质数,找到第n个丑数, 相似点都不是一个一个的检查,而是自底向上,从一个已知的数开始,质数的整数倍肯定不是质数,丑数的2,3,5倍还是丑数。统计数字n以内的质数,找到第n个丑数,组成n的完全平方数的最少个数,相似点自底向上找到第n个丑数,合并k个排序链表用堆找最小元素,弹出堆顶最小元素,以该元素为基,再去得到小元素,加入到堆中204. 计数质数 简单统计所有小于非负整数 n 的质数的数量。示例:输入: 10输出: 4解释: 小于 10原创 2020-07-31 21:37:11 · 175 阅读 · 0 评论 -
leetcode202_快乐数_简单_258. 各位相加_简单_263. 丑数_简单
题目 202_快乐数 简单编写一个算法来判断一个数 n 是不是快乐数。「快乐数」定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这个过程直到这个数变为 1,也可能是 无限循环 但始终变不到 1。如果 可以变为 1,那么这个数就是快乐数。如果 n 是快乐数就返回 True ;不是,则返回 False 。示例:输入:19输出:true解释:1^2 + 9^2 = 828^2 + 2^2 = 686^2 + 8^2 = 1001^2 + 0^2 + 0^2 =原创 2020-07-29 10:21:24 · 116 阅读 · 0 评论 -
leetcode_378. 有序矩阵中第K小的元素_373. 查找和最小的K对数字
题目 378. 有序矩阵中第K小的元素给定一个 n x n 矩阵,其中每行和每列元素均按升序排序,找到矩阵中第 k 小的元素。请注意,它是排序后的第 k 小元素,而不是第 k 个不同的元素。示例:matrix = [[ 1, 5, 9],[10, 11, 13],[12, 13, 15]],k = 8,返回 13。思路class Solution { public int kthSmallest(int[][] matrix, int k) { if(m原创 2020-07-28 17:01:06 · 92 阅读 · 0 评论 -
剑指 Offer 61. 扑克牌中的顺子
题目从扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的。2~10为数字本身,A为1,J为11,Q为12,K为13,而大、小王为 0 ,可以看成任意数字。A 不能视为 14。示例 1:输入: [1,2,3,4,5]输出: True示例 2:输入: [0,0,1,2,5]输出: True思路如果分升序,降序情况比较复杂观察,得到:数组元素没有重复最大值 - 最小值 < 5 (0不算)满足这两个条件,就可以判断是连续的顺子判断有没有重复,hash原创 2020-07-28 10:34:41 · 66 阅读 · 0 评论 -
leetcode_240_搜索二维矩阵 II_74_搜索二维矩阵
题目 240_搜索二维矩阵 II编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target。该矩阵具有以下特性:每行的元素从左到右升序排列。每列的元素从上到下升序排列。示例:现有矩阵 matrix 如下:[[1, 4, 7, 11, 15],[2, 5, 8, 12, 19],[3, 6, 9, 16, 22],[10, 13, 14, 17, 24],[18, 21, 23, 26, 30]]给定 target = 5,返回 true原创 2020-07-25 09:32:12 · 95 阅读 · 0 评论 -
leetcode_34_在排序数组中查找元素的第一个和最后一个位置_leetcode_287_第一个错误的版本
题目34. 在排序数组中查找元素的第一个和最后一个位置给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。你的算法时间复杂度必须是 O(log n) 级别。如果数组中不存在目标值,返回 [-1, -1]。示例 1:输入: nums = [5,7,7,8,8,10], target = 8输出: [3,4]示例 2:输入: nums = [5,7,7,8,8,10], target = 6输出: [-1,-1]自己的错误代码原创 2020-07-24 17:06:21 · 89 阅读 · 0 评论 -
leetcode_41_缺失的第一个正数_268_缺失数字_287_寻找重复数_448_找到所有数组中消失的数字
题目 leetcode_41_缺失的第一个正数 难给你一个未排序的整数数组,请你找出其中没有出现的最小的正整数。示例 1:输入: [1,2,0]输出: 3示例 2:输入: [3,4,-1,1]输出: 2示例 3:输入: [7,8,9,11,12]输出: 1思路将数组中属于[1, N]的元素 放在对应的位置, N是数组的长度再从左到右检查,如果位置上的元素不正确,那么就这个位置对应的正确元素就是最小的正数class Solution { public int first原创 2020-07-21 10:39:52 · 138 阅读 · 0 评论 -
leetcode_25_K 个一组翻转链表_困难_相似_两两交换链表中的节点
题目给你一个链表,每 k 个节点一组进行翻转,请你返回翻转后的链表。k 是一个正整数,它的值小于或等于链表的长度。如果节点总数不是 k 的整数倍,那么请将最后剩余的节点保持原有顺序。示例:给你这个链表:1->2->3->4->5当 k = 2 时,应当返回: 2->1->4->3->5当 k = 3 时,应当返回: 3->2->1->4->5思路重点 难点反转后的收尾节点怎么重新相连定义哪些辅助节点为下一次遍历原创 2020-07-16 10:33:57 · 105 阅读 · 0 评论 -
leetcode350_两个数组的交集 II_简单
题目给定两个数组,编写一个函数来计算它们的交集。思路1. 排好序后,双指针注意点:Arrays.copyOfRange(res, 0, index);,要不然后面有多余的0class Solution { public int[] intersect(int[] nums1, int[] nums2) { // 排好序,双指针 // int l1 = 0, l2 = 0; int len1 = nums1.leng原创 2020-07-10 16:07:33 · 86 阅读 · 0 评论