Leetcode 101:对称二叉树 题目描述 给定一个二叉树,检查它是否是镜像对称的。 解题思路 既然它是镜像的话,那么就是左右对称,这个我们可以使用一个递归来解决。我们令A等于这个树,B也等于这个树,假设A树和B树都只有一个结点(空结点…
Leetcode题目解析(191121):105&114
Leetcode 105:重建二叉树 题目描述 根据一棵树的前序遍历与中序遍历构造二叉树。 注意: 你可以假设树中没有重复的元素。 示例 给出 前序遍历 preorder = [3,9,20,15,7] 中序遍历 inorder = [9,…
Leetcode题目解析(191120):124&128
Leetcode 124:二叉树中的最大路径和 题目描述 给定一个非空二叉树,返回其最大路径和。本题中,路径被定义为一条从树中任意节点出发,达到任意节点的序列。该路径至少包含一个节点,且不一定经过根节点。 解题思路 参见: https://…
Leetcode题目解析(191119):136&137&139
Leetcode 136:只出现一次的数字 题目描述 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 说明: 你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗? 示例 输…
Leetcode题目解析(191118):141&142&146
Leetcode 142:环形链表2 题目描述 给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos…
Leetcode题目解析(191115):148&152
Leetcode 148:排序链表 题目描述 在 O(n log n) 时间复杂度和常数级空间复杂度下,对链表进行排序。 示例 示例 1: 输入: 4->2->1->3 输出: 1->2->3->4 示例 2: 输入: -1->5->3->…
Leetcode题目解析(191114):155&160
Leetcode 155:最小栈 题目描述 设计一个支持 push,pop,top 操作,并能在常数时间内检索到最小元素的栈。 push(x) — 将元素 x 推入栈中。 pop() — 删除栈顶的元素。 top()…