Leetcode
__盛夏光年__
这个作者很懒,什么都没留下…
展开
-
【LeetCode】1. Two Sum
传送门:https://leetcode.com/problems/two-sum/#/description一、题目描述Given an array of integers, return indices of the two numbers such that they add up to a specific target.You may assume that each input ...原创 2018-12-05 13:00:11 · 121 阅读 · 0 评论 -
【LeetCode】128. 最长连续序列
一、题目描述给定一个未排序的整数数组,找出最长连续序列的长度。要求算法的时间复杂度为 O(n)。二、示例示例:输入: [100, 4, 200, 1, 3, 2]输出: 4解释: 最长连续序列是 [1, 2, 3, 4]。它的长度为 4。三、分析思路一:使用sort排序,然后查找最大的连续序列。因为题目要求时间复杂度为 O(N) ,这种方式不可用。使用并查集参考资料:...原创 2019-03-12 23:06:57 · 242 阅读 · 0 评论 -
【LeetCode】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...原创 2019-03-15 14:45:43 · 197 阅读 · 0 评论 -
【LeetCode】390.消除游戏
一、描述给定一个从1 到 n 排序的整数列表。首先,从左到右,从第一个数字开始,每隔一个数字进行删除,直到列表的末尾。第二步,在剩下的数字中,从右到左,从倒数第一个数字开始,每隔一个数字进行删除,直到列表开头。我们不断重复这两步,从左到右和从右到左交替进行,直到只剩下一个数字。返回长度为 n 的列表中,最后剩下的数字。二、示例示例:输入:n = 9,1 2 3 4 5 6 7 ...原创 2019-03-09 21:49:19 · 180 阅读 · 0 评论 -
【LeetCode】414.第三大的数
题目描述给定一个非空数组,返回此数组中第三大的数。如果不存在,则返回数组中最大的数。要求算法时间复杂度必须是O(n)。示例示例 1:输入: [3, 2, 1]输出: 1解释: 第三大的数是 1.示例 2:输入: [1, 2]输出: 2解释: 第三大的数不存在, 所以返回最大的数 2 .示例 3:输入: [2, 2, 3, 1]输出: 1解释: 注意,要求返回第三大的...原创 2019-03-03 22:36:10 · 223 阅读 · 0 评论 -
【LeetCode】617. 合并二叉树
一、题目描述给定两个二叉树,想象当你将它们中的一个覆盖到另一个上时,两个二叉树的一些节点便会重叠。你需要将他们合并为一个新的二叉树。合并的规则是如果两个节点重叠,那么将他们的值相加作为节点合并后的新值,否则不为 NULL 的节点将直接作为新二叉树的节点。二、示例示例 1:输入: Tree 1 Tree 2 ...原创 2019-03-06 09:21:31 · 92 阅读 · 0 评论 -
【LeetCode】732. 我的日程安排表 III
传送门:https://leetcode-cn.com/problems/my-calendar-iii/一、题目描述实现一个 MyCalendar 类来存放你的日程安排,你可以一直添加新的日程安排。MyCalendar 有一个 book(int start, int end)方法。它意味着在start到end时间内增加一个日程安排,注意,这里的时间是半开区间,即 [start, end),...原创 2019-02-25 20:14:22 · 502 阅读 · 0 评论 -
【LeetCode】462. 最少移动次数使数组元素相等 II
一、题目描述给定一个非空整数数组,找到使所有数组元素相等所需的最小移动数,其中每次移动可将选定的一个元素加1或减1。 您可以假设数组的长度最多为10000。二、例如例如:输入:[1,2,3]输出:2说明:只有两个动作是必要的(记得每一步仅可使其中一个元素加1或减1):[1,2,3] => [2,2,3] => [2,2,2]三、分析思路:找到中位数,然...原创 2019-03-04 22:20:33 · 415 阅读 · 0 评论 -
【LeetCode】233. 数字1的个数
传送门:https://leetcode-cn.com/problems/number-of-digit-one/一、题目描述给定一个整数 n,计算所有小于等于 n 的非负整数中数字 1 出现的个数。二、示例输入: 13输出: 6解释: 数字 1 出现在以下数字中: 1, 10, 11, 12, 13 。三、分析思路:分别对每一位统计,即个位、十位、百位…eg:给定数字 n=ab...原创 2019-02-23 13:06:08 · 769 阅读 · 1 评论 -
【LeetCode 502】IPO
一、题目描述假设 LeetCode 即将开始其 IPO。为了以更高的价格将股票卖给风险投资公司,LeetCode希望在 IPO 之前开展一些项目以增加其资本。 由于资源有限,它只能在 IPO 之前完成最多 k 个不同的项目。帮助 LeetCode 设计完成最多 k 个不同项目后得到最大总资本的方式。给定若干个项目。对于每个项目 i,它都有一个纯利润 Pi,并且需要最小的资本 Ci 来启动相应的...原创 2019-02-27 20:33:50 · 281 阅读 · 0 评论 -
【LeetCode】35. 搜索插入位置(C++实现)
传送门:https://leetcode-cn.com/problems/search-insert-position/一、题目描述给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。你可以假设数组中无重复元素。二、示例示例 1:输入: [1,3,5,6], 5输出: 2示例 2:输入: [1,3,5,6], 2...原创 2019-01-21 19:38:27 · 337 阅读 · 0 评论 -
【编程3】二叉树遍历(LeetCode.102)
二叉树是最常用的树结构二叉树的层次遍历1、题目描述——LeetCode.102给定一个二叉树,返回其按层次遍历的节点值。 (即逐层地,从左到右访问所有节点)。给定二叉树: [3,9,20,null,null,15,7],返回其层次遍历结果:一、二叉树(Binary Tree)1、相关概念二叉树每个节点最多有两个子节点(左子结点、右子节点)。满二叉树叶子节点全都在最底层,除...原创 2018-12-11 10:11:54 · 274 阅读 · 0 评论 -
【编程2】单链表+单链表反转(LeetCode. 206)
一、链表链表:不需要一块连续的内存空间,它通过“指针”将一组零散的内存块串联起来使用.内存分布:最常用的链表结构:单链表、双向链表和循环链表二、单链表1、基本概念(1)单链表当一个序列中只含有指向它的后继结点的链接时,就称该链表为单链表。非空表(有头结点):空表:(2)头指针——必有元素链表指向第一个结点的指针,若链表有头结点,则是指向头结点的指针。头指针具有标识作...原创 2018-12-10 10:32:14 · 397 阅读 · 1 评论 -
【编程1】 Two Sum + 哈希算法
传送门:https://leetcode.com/problems/two-sum/#/description一、题目描述Given an array of integers, return indices of the two numbers such that they add up to a specific target.You may assume that each input ...原创 2018-12-09 12:39:52 · 418 阅读 · 0 评论 -
【编程5】斐波那契数列 + 递归+LeetCode50
传送门:https://leetcode-cn.com/problems/powx-n/一、LeetCode 50. Pow(x, n)1、题目描述实现 pow(x, n) ,即计算 x 的 n 次幂函数。2、示例示例 1:输入: 2.00000, 10输出: 1024.00000示例 2:输入: 2.10000, 3输出: 9.26100示例 3:输入: 2.0000...原创 2018-12-13 17:15:53 · 423 阅读 · 0 评论 -
【编程4】插入排序+快速排序+LeetCode.148(排序链表)
文章目录一、排序链表1、题目描述——LeetCode.1482、分析(1)一般的快排(2)解题思路3、实现二、排序算法三、插入排序1、基本思想(1)过程概述(2)具体算法描述:2、示例3、实现4、分析(1)原地排序算法(2)稳定排序算法(3)时间复杂度四、快速排序1、基本思想(1)快速排序的流程2、实现3、性能分析一、排序链表1、题目描述——LeetCode.148在 O(n logn) 时...原创 2018-12-12 14:37:33 · 331 阅读 · 0 评论 -
【LeetCode】2. Add Two Numbers
传送门:https://leetcode.com/problems/add-two-numbers/一、题目描述You are given two non-empty linked lists representing two non-negative integers. The digits are stored in reverse order and each of their node...原创 2018-12-07 21:23:27 · 104 阅读 · 0 评论 -
【LeetCode】687. 最长同值路径
一、题目描述给定一个二叉树,找到最长的路径,这个路径中的每个节点具有相同值。 这条路径可以经过也可以不经过根节点。注意:两个节点之间的路径长度由它们之间的边数表示。二、示例示例 1:输入: 5 / \ 4 5 / \ \ 1 1 5输出:2示例 2:输入: 1 / \ 4 5 / ...原创 2019-03-26 22:10:28 · 191 阅读 · 0 评论