2019年6月1日
摘要: 给定一个二叉树,找出其最大深度。 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。 说明: 叶子节点是指没有子节点的节点。 示例:给定二叉树 [3,9,20,null,null,15,7], 返回它的最大深度 3 。 阅读全文
posted @ 2019-06-01 09:58 墨小轩 阅读(114) 评论(0) 推荐(0) 编辑
  2019年5月31日
摘要: 给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。 如果你最多只允许完成一笔交易(即买入和卖出一支股票),设计一个算法来计算你所能获取的最大利润。 注意你不能在买入股票前卖出股票。 示例 1: 示例 2: 阅读全文
posted @ 2019-05-31 08:54 墨小轩 阅读(152) 评论(0) 推荐(0) 编辑
  2019年5月30日
摘要: 给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。 设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。 注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。 示例 1: 示例 2: 示例 3: 阅读全文
posted @ 2019-05-30 09:13 墨小轩 阅读(289) 评论(0) 推荐(0) 编辑
  2019年5月29日
摘要: 给定一个非空二叉树,返回其最大路径和。 本题中,路径被定义为一条从树中任意节点出发,达到任意节点的序列。该路径至少包含一个节点,且不一定经过根节点。 阅读全文
posted @ 2019-05-29 09:43 墨小轩 阅读(108) 评论(0) 推荐(0) 编辑
  2019年5月28日
摘要: 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 说明: 你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗? 示例 1: 示例 2: 阅读全文
posted @ 2019-05-28 08:59 墨小轩 阅读(54) 评论(0) 推荐(0) 编辑
  2019年5月27日
摘要: 给定一个链表,判断链表中是否有环。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。 示例 1: 示例 2: 示例 3: 阅读全文
posted @ 2019-05-27 08:51 墨小轩 阅读(76) 评论(0) 推荐(0) 编辑
  2019年5月26日
摘要: 给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。 为了表示给定链表中的环,我们使用整数 pos来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。 说明:不允许修改给定的链表。 示例 1: 示例 2: 示例 3: 阅读全文
posted @ 2019-05-26 03:02 墨小轩 阅读(93) 评论(0) 推荐(0) 编辑
  2019年5月25日
摘要: 在 O(n log n) 时间复杂度和常数级空间复杂度下,对链表进行排序。 示例 1: 示例 2: 阅读全文
posted @ 2019-05-25 04:19 墨小轩 阅读(75) 评论(0) 推荐(0) 编辑
  2019年5月24日
摘要: 设计一个支持 push,pop,top 操作,并能在常数时间内检索到最小元素的栈。 push(x) -- 将元素 x 推入栈中。 pop() -- 删除栈顶的元素。 top() -- 获取栈顶元素。 getMin() -- 检索栈中的最小元素。 示例: 阅读全文
posted @ 2019-05-24 09:15 墨小轩 阅读(96) 评论(0) 推荐(0) 编辑
摘要: 编写一个程序,找到两个单链表相交的起始节点。 如下面的两个链表: 在节点 c1 开始相交。 示例 1: 示例 3: 注意: 如果两个链表没有交点,返回 null. 在返回结果后,两个链表仍须保持原有的结构。 可假定整个链表结构中没有循环。 程序尽量满足 O(n) 时间复杂度,且仅用 O(1) 内存。 阅读全文
posted @ 2019-05-24 09:11 墨小轩 阅读(137) 评论(0) 推荐(0) 编辑