算法题总结
文章平均质量分 90
Miller-Xie
这个作者很懒,什么都没留下…
展开
-
LeetCode算法题83:删除排序链表中的重复元素(Remove Duplicates from Sorted List)
删除排序链表中的重复元素LeetCode中文LeetCode英文给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。示例 1:输入: 1->1->2输出: 1->2示例 2:输入...原创 2019-07-07 09:24:13 · 211 阅读 · 0 评论 -
LeetCode算法题141:环形链表(Linked List Cycle)
技术交流可以加:本人微信:xcg852390212本人qq:852390212学习交流qq群1(已满): 962535112学习交流qq群2: 780902027环形链表LeetCode中文LeetCode英文给定一个链表,判断链表中是否有环。为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表...原创 2019-07-13 09:44:32 · 160 阅读 · 0 评论 -
LeetCode算法题16:最接近的三数之和(3Sum Closest)
技术交流可以加:本人微信:xcg852390212本人qq:852390212学习交流qq群1(已满): 962535112学习交流qq群2: 780902027最接近的三数之和LeetCode中文LeetCode英文给定一个包括 n 个整数的数组 nums 和 一个目标值 target。找出 nums 中的三个整数,使得它们的和与 target 最接近。返回这三个数的和。假定...原创 2019-05-30 08:27:38 · 197 阅读 · 0 评论 -
LeetCode算法题:三数之和(3Sum)
技术交流可以加:本人微信:xcg852390212本人qq:852390212学习交流qq群1(已满): 962535112学习交流qq群2: 780902027三数之和LeetCode中文LeetCode英文给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组。注意:...原创 2019-05-30 08:25:19 · 702 阅读 · 0 评论 -
LeetCode算法题217:存在重复元素(Contains Duplicate)
技术交流可以加:本人微信:xcg852390212本人qq:852390212学习交流qq群1(已满): 962535112学习交流qq群2: 780902027存在重复元素LeetCode中文LeetCode英文给定一个整数数组,判断是否存在重复元素。如果任何值在数组中出现至少两次,函数返回 true。如果数组中每个元素都不相同,则返回 false。示例 1:输入: [...原创 2019-06-02 12:05:04 · 148 阅读 · 0 评论 -
LeetCode算法题350:两个数组的交集II(Intersection of Two Arrays II)
技术交流可以加:本人微信:xcg852390212本人qq:852390212学习交流qq群1(已满): 962535112学习交流qq群2: 780902027两个数组的交集IILeetCode中文LeetCode英文给定两个数组,编写一个函数来计算它们的交集。示例 1:输入: nums1 = [1,2,2,1], nums2 = [2,2]输出: [2,2]示例 ...原创 2019-06-02 11:45:10 · 237 阅读 · 0 评论 -
LeetCode算法题349:两个数组的交集(Intersection of Two Arrays)
技术交流可以加:本人微信:xcg852390212本人qq:852390212学习交流qq群1(已满): 962535112学习交流qq群2: 780902027两个数组的交集LeetCode中文LeetCode英文给定两个数组,编写一个函数来计算它们的交集。示例 1:输入: nums1 = [1,2,2,1], nums2 = [2,2]输出: [2]示例 2:输...原创 2019-06-02 11:31:45 · 306 阅读 · 0 评论 -
二叉树总结专题
技术交流可以加:本人微信:xcg852390212本人qq:852390212学习交流qq群1(已满): 962535112学习交流qq群2: 780902027本文针对二叉树的高频算法题进行分类总结,内容会一直持续更新二叉树算法题总结二叉搜索树将有序数组转换为二叉搜索树 (easy 中序)二叉搜索树的最近公共祖先 (easy)二叉树的最近公共祖先 (medium...原创 2019-05-29 10:42:09 · 490 阅读 · 0 评论 -
LeetCode算法题11:盛最多水的容器(Container With Most Water)
技术交流可以加:本人微信:xcg852390212本人qq:852390212学习交流qq群1(已满): 962535112学习交流qq群2: 780902027盛最多水的容器LeetCode中文LeetCode英文给定 n 个非负整数 a1,a2,…,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 ...原创 2019-05-29 10:23:46 · 585 阅读 · 0 评论 -
LeetCode算法题392:判断子序列(Is Subsequence)
技术交流可以加:本人微信:xcg852390212本人qq:852390212学习交流qq群1(已满): 962535112学习交流qq群2: 780902027判断子序列LeetCode中文LeetCode英文给定字符串 s 和 t ,判断 s 是否为 t 的子序列。你可以认为 s 和 t 中仅包含英文小写字母。字符串 t 可能会很长(长度 ~= 500,000),而 s ...原创 2019-05-29 10:21:54 · 390 阅读 · 0 评论 -
LeetCode算法题142:环形链表II(Linked List Cycle II)
技术交流可以加:本人微信:xcg852390212本人qq:852390212学习交流qq群1(已满): 962535112学习交流qq群2: 780902027环形链表IILeetCode中文LeetCode英文给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 ...原创 2019-07-13 09:47:46 · 190 阅读 · 0 评论 -
剑指offer面试题7:重建二叉树
技术交流可以加:本人微信:xcg852390212本人qq:852390212学习交流qq群1(已满): 962535112学习交流qq群2: 780902027重建二叉树NowCoder题目描述输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4...原创 2019-07-14 11:16:09 · 147 阅读 · 0 评论 -
LeetCode算法题21:合并两个有序链表(Merge Two Sorted Lists)
技术交流可以加:本人微信:xcg852390212本人qq:852390212学习交流qq群1(已满): 962535112学习交流qq群2: 780902027合并两个有序链表LeetCode中文LeetCode英文将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例:输入:1->2->4, 1->3->...原创 2019-07-07 09:21:32 · 195 阅读 · 0 评论 -
LeetCode算法题206:反转链表(Reverse Linked List)
技术交流可以加:本人微信:xcg852390212本人qq:852390212学习交流qq群1(已满): 962535112学习交流qq群2: 780902027反转链表LeetCode中文LeetCode英文反转一个单链表。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->...原创 2019-07-07 09:18:35 · 187 阅读 · 0 评论 -
剑指offer面试题6:从尾到头打印链表
从尾到头打印链表NowCoder题目描述输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。解答方法1如果允许原地修改链表,转换为反转链表问题,详见反转链表时间复杂度:O(n)空间复杂度:O(1)方法2如果不允许原地修改链表,那么可以利用栈后进先出的特点,遍历链表,逐个将链表元素放入栈中,然后依次弹出栈顶元素并打印。时间复杂度:O(n)空间复杂度:O(n)...原创 2019-07-07 09:10:07 · 150 阅读 · 0 评论 -
剑指offer面试题5:替换空格
技术交流可以加:本人微信:xcg852390212本人qq:852390212学习交流qq群1(已满): 962535112学习交流qq群2: 780902027替换空格NowCoder题目描述请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。解答两个首先统计字符串中...原创 2019-07-07 08:57:09 · 125 阅读 · 0 评论 -
剑指offer面试题3:数组中重复的数字
技术交流可以加:本人微信:xcg852390212本人qq:852390212学习交流qq群1(已满): 962535112学习交流qq群2: 780902027数组中重复的数字Nowcoder题目描述在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任意一个重复的数字。 例如,如...原创 2019-07-05 11:20:53 · 233 阅读 · 0 评论 -
剑指offer总结专题
技术交流可以加:本人微信:xcg852390212本人qq:852390212学习交流qq群1(已满): 962535112学习交流qq群2: 780902027本文针对剑指offer算法题进行总结,内容会一直持续更新剑指Offer题解面试题3:数组中重复的数字面试题4:二维数组的查找面试题5:替换空格面试题6:从尾到头打印链表面试题7:重建二叉树面试题8:二叉...原创 2019-07-14 11:31:06 · 469 阅读 · 0 评论 -
剑指offer面试题4:二维数组的查找
技术交流可以加:本人微信:xcg852390212本人qq:852390212学习交流qq群1(已满): 962535112学习交流qq群2: 780902027二维数组的查找NowCoder题目描述在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否...原创 2019-07-14 11:29:59 · 205 阅读 · 0 评论 -
剑指offer面试题10:裴波那契数列
技术交流可以加:本人微信:xcg852390212本人qq:852390212学习交流qq群1(已满): 962535112学习交流qq群2: 780902027裴波那契数列NowCoder题目描述大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。n<=39解答方法1:递归会进行很多重复计算,需要优化时间复杂...原创 2019-07-14 11:22:51 · 226 阅读 · 0 评论 -
剑指offer面试题9:用两个栈实现队列
技术交流可以加:本人微信:xcg852390212本人qq:852390212学习交流qq群1(已满): 962535112学习交流qq群2: 780902027用两个栈实现队列NowCoder题目描述用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。解答结合栈结构先进后出以及队列结构先进先出的特点:当push操作时,直接将元素加到栈1...原创 2019-07-14 11:21:09 · 168 阅读 · 0 评论 -
剑指offer面试题8:二叉树的下一个节点
技术交流可以加:本人微信:xcg852390212本人qq:852390212学习交流qq群1(已满): 962535112学习交流qq群2: 780902027二叉树的下一个节点NowCoder题目描述给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。解答分几种情况考虑:如果节点pNo...原创 2019-07-14 11:19:36 · 180 阅读 · 0 评论 -
LeetCode算法题283:移动零(Move Zeroes)
技术交流可以加:本人微信:xcg852390212本人qq:852390212学习交流qq群1(已满): 962535112学习交流qq群2: 780902027移动零LeetCode中文LeetCode英文给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。示例:输入: [0,1,0,3,12]输出: [1,3,12,0,0]...原创 2019-05-29 10:19:56 · 190 阅读 · 0 评论 -
LeetCode算法题121:买卖股票的最佳时机(Best Time to Buy and Sell Stock)
技术交流可以加:本人微信:xcg852390212本人qq:852390212学习交流qq群1(已满): 962535112学习交流qq群2: 780902027买卖股票的最佳时机LeetCode中文LeetCode英文给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。如果你最多只允许完成一笔交易(即买入和卖出一支股票),设计一个算法来计算你所能获取的最大利润。...原创 2019-05-28 15:01:26 · 170 阅读 · 0 评论 -
LeetCode算法题240:搜索二维矩阵II(Search a 2D Matrix II)
技术交流可以加:本人微信:xcg852390212本人qq:852390212学习交流qq群1(已满): 962535112学习交流qq群2: 780902027搜索二维矩阵IILeetCode中文LeetCode英文编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target。该矩阵具有以下特性:每行的元素从左到右升序排列。每列的元素从上到下升...原创 2019-05-28 13:00:02 · 223 阅读 · 0 评论 -
LeetCode算法题235:二叉搜索树的最近公共祖先(Lowest Common Ancestor of a Binary Search Tree)
二叉搜索树的最近公共祖先LeetCode中文LeetCode英文给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。”例如,给定如下二叉搜索树: root = [6,2,8,0,4,7,9,null,...原创 2019-05-18 10:31:49 · 288 阅读 · 0 评论 -
LeetCode算法题108:将有序数组转换为二叉搜索树(Convert Sorted Array to Binary Search Tree)
将有序数组转换为二叉搜索树LeetCode中文LeetCode英文将一个按照升序排列的有序数组,转换为一棵高度平衡二叉搜索树。本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1。示例:给定有序数组: [-10,-3,0,5,9],一个可能的答案是:[0,-3,9,-10,null,5],它可以表示下面这个高度平衡二叉搜索树: 0...原创 2019-05-18 10:29:36 · 406 阅读 · 0 评论 -
LeetCode算法题48:旋转图像(Rotate Image)
旋转图像LeetCode中文LeetCode英文给定一个 n × n 的二维矩阵表示一个图像。将图像顺时针旋转 90 度。说明:你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。示例 1:给定 matrix = [ [1,2,3], [4,5,6], [7,8,9]],原地旋转输入矩阵,使其变为:[ [7,4,1]...原创 2019-05-19 10:40:37 · 404 阅读 · 0 评论 -
LeetCode算法题59:螺旋矩阵II(Spiral Matrix II)
螺旋矩阵IILeetCode中文LeetCode英文给定一个正整数 n,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的正方形矩阵。示例:输入: 3输出:[ [ 1, 2, 3 ], [ 8, 9, 4 ], [ 7, 6, 5 ]]解答思路和 螺旋矩阵 相同,还是分层处理,不过螺旋矩阵是从矩阵读取值,这一题是写入值到矩阵。可以定义一个变量cnt用于全...原创 2019-05-19 10:39:45 · 232 阅读 · 0 评论 -
LeetCode算法题54:螺旋矩阵(Spiral Matrix)
螺旋矩阵LeetCode中文LeetCode英文给定一个包含 m x n 个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素。示例 1:输入:[ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ]]输出: [1,2,3,6,9,8,7,4,5]示例 2:输入:[ [1, 2, 3, 4], [5, 6, 7, ...原创 2019-05-19 10:39:08 · 314 阅读 · 0 评论 -
LeetCode算法题94:二叉树的中序遍历(Binary Tree Inorder Traversal)
二叉树的中序遍历LeetCode中文LeetCode英文给定一个二叉树,返回它的 中序 遍历。示例:输入: [1,null,2,3] 1 \ 2 / 3输出: [1,3,2]进阶: 递归算法很简单,你可以通过迭代算法完成吗?解答方法1:递归C++代码/** * Definition for a binary tree node. ...原创 2019-05-19 10:38:12 · 232 阅读 · 0 评论 -
LeetCode算法题105:从前序与中序遍历序列构造二叉树(Construct Binary Tree from Preorder and Inorder Traversal)
从前序与中序遍历序列构造二叉树LeetCode中文LeetCode英文根据一棵树的前序遍历与中序遍历构造二叉树。注意:你可以假设树中没有重复的元素。例如,给出前序遍历 preorder = [3,9,20,15,7]中序遍历 inorder = [9,3,15,20,7]返回如下的二叉树: 3 / \ 9 20 / \ 15 7解答...原创 2019-05-19 10:37:25 · 222 阅读 · 0 评论 -
LeetCode算法题113:路径总和II(Path Sum II)
路径总和IILeetCode中文LeetCode英文给定一个二叉树和一个目标和,找到所有从根节点到叶子节点路径总和等于给定目标和的路径。说明: 叶子节点是指没有子节点的节点。示例:给定如下二叉树,以及目标和 sum = 22, 5 / \ 4 8 / / \ ...原创 2019-05-19 10:36:48 · 146 阅读 · 0 评论 -
LeetCode算法题129:求根到叶子节点数字之和(Sum Root to Leaf Numbers)
求根到叶子节点数字之和LeetCode中文LeetCode英文给定一个二叉树,它的每个结点都存放一个 0-9 的数字,每条从根到叶子节点的路径都代表一个数字。例如,从根到叶子节点路径 1->2->3 代表数字 123。计算从根到叶子节点生成的所有数字之和。说明: 叶子节点是指没有子节点的节点。示例 1:输入: [1,2,3] 1 / \ 2 3输...原创 2019-05-19 10:35:39 · 153 阅读 · 0 评论 -
LeetCode算法题144:二叉树的前序遍历(Binary Tree Preorder Traversal)
二叉树的前序遍历LeetCode中文LeetCode英文给定一个二叉树,返回它的 前序 遍历。示例:输入: [1,null,2,3] 1 \ 2 / 3 输出: [1,2,3]进阶: 递归算法很简单,你可以通过迭代算法完成吗?解答方法1:递归C++代码/** * Definition for a binary tree node...原创 2019-05-19 10:34:20 · 294 阅读 · 0 评论 -
LeetCode算法题236:二叉树的最近公共祖先(Lowest Common Ancestor of a Binary Tree)
二叉树的最近公共祖先LeetCode中文LeetCode英文给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。”例如,给定如下二叉树: root = [3,5,1,6,2,0,8,null,n...原创 2019-05-18 10:32:59 · 792 阅读 · 0 评论 -
LeetCode算法题98:验证二叉搜索树(Validate Binary Search Tree)
验证二叉搜索树LeetCode中文LeetCode英文给定一个二叉树,判断其是否是一个有效的二叉搜索树。假设一个二叉搜索树具有如下特征:节点的左子树只包含小于当前节点的数。节点的右子树只包含大于当前节点的数。所有左子树和右子树自身必须也是二叉搜索树。示例 1:输入: 2 / \ 1 3输出: true示例 2:输入: 5 / \ ...原创 2019-05-18 10:38:57 · 222 阅读 · 0 评论 -
LeetCode算法题238:除自身以外数组的乘积(Product of Array Except Self)
技术交流可以加:本人微信:xcg852390212本人qq:852390212学习交流qq群1(已满): 962535112学习交流qq群2: 780902027除自身以外数组的乘积LeetCode中文LeetCode英文给定长度为 n 的整数数组 nums,其中 n > 1,返回输出数组 output ,其中 output[i] 等于 nums 中除 nums[i] 之...原创 2019-05-28 12:03:12 · 154 阅读 · 0 评论 -
数组总结专题
技术交流可以加:本人微信:xcg852390212本人qq:852390212学习交流qq群1(已满): 962535112学习交流qq群2: 780902027本文针对数组的高频算法题进行分类总结,内容会一直持续更新数组类总结找规律螺旋矩阵 (medium)螺旋矩阵II (medium)旋转图像 (medium)矩阵置零 (medium)除自身以外数组的乘积 (...原创 2019-06-05 10:01:46 · 404 阅读 · 0 评论 -
LeetCode算法题73:矩阵置零(Set Matrix Zeroes)
技术交流可以加:本人微信:xcg852390212本人qq:852390212学习交流qq群1(已满): 962535112学习交流qq群2: 780902027矩阵置零LeetCode中文LeetCode英文给定一个 m x n 的矩阵,如果一个元素为 0,则将其所在行和列的所有元素都设为 0。请使用原地算法。示例 1:输入: [ [1,1,1], [1,0,1...原创 2019-05-28 11:21:50 · 174 阅读 · 0 评论