摘要: 图书资源整理 京东 多看 "周读" "鸿鹄搜书" "我的小书屋 最新最全电子书免费下载"阅读全文
posted @ 2018-07-26 16:31 ACBingo 阅读(19) 评论(0) 编辑
摘要: "120. 三角形最小路径和" 动态规划入门题 class Solution { public int minimumTotal(List triangle) { if (triangle.get(0).size() == 0) return 0; int[][] f = new int[trian阅读全文
posted @ 2018-11-06 23:22 ACBingo 阅读(4) 评论(0) 编辑
摘要: "119. 杨辉三角 II" 水题,题目有个进阶,要求空间复杂度是O(k),实际上就是时间换空间的做法。把问题的解法给成从下而上,递归即可。 懒得写递归了,直接套用上题阅读全文
posted @ 2018-11-06 23:03 ACBingo 阅读(8) 评论(0) 编辑
摘要: "118. 杨辉三角" 水题阅读全文
posted @ 2018-11-06 23:02 ACBingo 阅读(7) 评论(0) 编辑
摘要: "117. 填充同一层的兄弟节点 II" 与 "116. 填充同一层的兄弟节点" 完全一样,二叉树的层次遍历。。这是这次不是完美二叉树了阅读全文
posted @ 2018-11-06 22:49 ACBingo 阅读(24) 评论(0) 编辑
摘要: "116. 填充同一层的兄弟节点" 其实就是个二叉树的层次遍历阅读全文
posted @ 2018-11-06 22:45 ACBingo 阅读(23) 评论(0) 编辑
摘要: "114. 二叉树展开为链表" 这个题描述不清啊 一开始看描述每太明白题意,对着给出的样例做的 实际上就是: 1. 将右子树接到左子树的最右边的叶子节点上 2. 将左子树接到root的右儿子上 3. 把root的左儿子置空阅读全文
posted @ 2018-11-06 21:44 ACBingo 阅读(7) 评论(0) 编辑
摘要: "113. 路径总和 II" 这题跟上个题的区别 "112. 路径总和" ,需要保存下路径,且有可能出现多条路径。 在前一个题的基础上加上回溯即可阅读全文
posted @ 2018-11-06 21:27 ACBingo 阅读(21) 评论(0) 编辑
摘要: "112. 路径总和" 前序遍历累加路径和即可,注意两点: 1. 要在叶子节点判断是否等于目标和,非叶子节点达到了不行 2. 可能出现空树,这时即使sum为0也为false(都不存在路径谈何路径和)阅读全文
posted @ 2018-11-06 21:11 ACBingo 阅读(14) 评论(0) 编辑
摘要: "110. 平衡二叉树" 实际上递归的求每一个左右子树的最大深度即可,如果差值大于1,返回一个 1的状态上去 class Solution { public boolean isBalanced(TreeNode root) { return depth(root)!= 1; } public in阅读全文
posted @ 2018-11-06 21:00 ACBingo 阅读(3) 评论(0) 编辑
摘要: "109. 有序链表转换二叉搜索树" 这个题和上个题 "108. 将有序数组转换为二叉搜索树" 唯一的区别就是数字变成了链表,所以一个比较直观的做法就是先遍历一遍链表。。。。233阅读全文
posted @ 2018-11-06 20:45 ACBingo 阅读(17) 评论(0) 编辑
摘要: "108. 将有序数组转换为二叉搜索树" 由于数组是有序的,而我们只需要给出一种符合平衡要求的bst即可。所以直接拿数组中间值做根节点,左右分别为左右子树,递归处理即可阅读全文
posted @ 2018-11-06 20:39 ACBingo 阅读(2) 评论(0) 编辑
摘要: "107. 二叉树的层次遍历 II" 相当于把 "102. 二叉树的层次遍历" 的输出结果反转了一下阅读全文
posted @ 2018-11-06 20:18 ACBingo 阅读(4) 评论(0) 编辑
摘要: "106. 从中序与后序遍历序列构造二叉树" 后序遍历的第一个元素肯定是根节点,在中序遍历中找到该元素,左半是该节点的左子树的元素,右半是该节点的右子树元素,记左半的长度为L,后序遍历中,前L个元素为左子树的元素,除去最后一个元素外的后半部分则为右子树的元素。递归处理即可。阅读全文
posted @ 2018-11-06 20:14 ACBingo 阅读(23) 评论(0) 编辑
摘要: "105. 从前序与中序遍历序列构造二叉树" 前序遍历的第一个元素肯定是根节点,在中序遍历中找到该元素,左半是该节点的左子树的元素,右半是该节点的右子树元素,记左半的长度为l,前序遍历中去掉第一个元素后,前l个元素为左子树的元素,后半部分则为右子树的元素。递归处理即可。阅读全文
posted @ 2018-11-06 20:03 ACBingo 阅读(19) 评论(0) 编辑
摘要: "111. 二叉树的最小深度" 与获取最大深度不同的是,要注意判断下是不是叶子节点,阅读全文
posted @ 2018-11-06 19:28 ACBingo 阅读(4) 评论(0) 编辑