摘要: 给定一个二叉树,判断它是否是高度平衡的二叉树。 本题中,一棵高度平衡二叉树定义为: 一个二叉树 每个节点 的左右两个子树的高度差的绝对值不超过1。 示例 1: 给定二叉树 返回 。 示例 2: 给定二叉树 返回 。 这个题目让我对递归的思路理解地更深刻了,评论区有一个大佬的博客写关于递归的写得很好 阅读全文
posted @ 2020-03-22 10:53 风语如歌j 阅读(105) 评论(0) 推荐(0) 编辑
摘要: 有一个二维矩阵 ,每个位置要么是陆地(记号为 )要么是水域(记号为 )。 我们从一块陆地出发,每次可以往上下左右 4 个方向相邻区域走,能走到的所有陆地区域,我们将其称为一座「 岛屿 」。 如果一座岛屿 完全 由水域包围,即陆地边缘上下左右所有相邻区域都是水域,那么我们将其称为 「 封闭岛屿 」。 阅读全文
posted @ 2020-03-22 10:26 风语如歌j 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 给你一个树,请你 按中序遍历 重新排列树,使树中最左边的结点现在是树的根,并且每个结点没有左子结点,只有一个右子结点。 示例 : 提示: 1. 给定树中的结点数介于 和 之间。 2. 每个结点都有一个从 到 范围内的唯一整数值。 这道题目思路很简单,用中序遍历即可,在中序遍历的过程中把当前遍历的节点 阅读全文
posted @ 2020-03-22 10:13 风语如歌j 阅读(156) 评论(0) 推荐(0) 编辑
摘要: 给定一棵二叉搜索树,请找出其中第k大的节点。 示例 1: 输入: root = [3,1,4,null,2], k = 1 3 / \ 1 4 \ 2 输出: 4 示例 2: 输入: root = [5,3,6,2,4,null,null,1], k = 3 5 / \ 3 6 / \ 2 4 / 阅读全文
posted @ 2020-03-15 22:24 风语如歌j 阅读(314) 评论(0) 推荐(0) 编辑
摘要: 给定一个二叉树,找出其最大深度。 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。 说明: 叶子节点是指没有子节点的节点。 示例: 给定二叉树 , 返回它的最大深度 3 。 有两种解法 1.深度优先遍历 求出每一个子树的深度,依次往上递加1,可以用递归解决。 2.广度优先遍历 每一层每一层的 阅读全文
posted @ 2020-03-11 14:16 风语如歌j 阅读(88) 评论(0) 推荐(0) 编辑
摘要: `请判断一个链表是否为回文链表。` `输出: false` `输出: true` `你能否用 O(n) 时间复杂度和 O(1) 空间复杂度解决此题?` `链接:https://leetcode cn.com/problems/palindrome linked list` 解题思路: 1.使用Arr 阅读全文
posted @ 2020-03-07 23:55 风语如歌j 阅读(82) 评论(0) 推荐(0) 编辑
摘要: 将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 `输出:1 1 2 3 4 4` 解法有两种: 1.递归思路 ​ 思路很简单,递归首先要考虑 边界情况 ,也就是什么时候停止。当l1走到空时,返回的一定是l2,l2空时同理。 ​ 当l1较小时,l1为头节点 阅读全文
posted @ 2020-03-06 22:52 风语如歌j 阅读(109) 评论(0) 推荐(0) 编辑