07 2019 档案

摘要:一、题目 1、审题 2、分析 求一棵二叉树中两个节点相连的路径中的最多的边数。 二、解答 1、思路 等价于求一个节点作为根节点时,Max (左孩子的深度 + 右孩子深度). ① 、采用全局变量 max 记录 Max(左孩子深度 + 右孩子深度) ②、新建一个 getMaxDepth(root) 方法 阅读全文
posted @ 2019-07-18 17:42 skillking2 阅读(115) 评论(0) 推荐(0)
摘要:一、题目 1、审题 2、分析 一个整形数组!元素值为 1~size; 出现的元素次数为 1~2 次。 求出所有 1~size 中没有出现的整数! 二、解答 1、思路 由于元素值都为 1~size之间。所以可以将数组下标 index 进行联系。 ① 遍历数组,将出现的元素值对应的数组下标的元素都标记为 阅读全文
posted @ 2019-07-17 12:09 skillking2 阅读(159) 评论(0) 推荐(0)
摘要:一、题目 1、审题 2、分析 求出所有s子串的下标,从该下标开始的连续子字符串包含 p 中的所有字符(可以无序); 以 List方式返回所有下标; 二、解答 1、思路 以滑动窗口的方式统计所有符合的子串! 阅读全文
posted @ 2019-07-16 20:28 skillking2 阅读(123) 评论(0) 推荐(0)
摘要:一、滑动窗口题型模板 二、LeetCode 中 几个滑动窗口套用模板实现 1、 76. Minimum Window Substring https://leetcode.com/problems/minimum-window-substring/description/ 2、3 Longest S 阅读全文
posted @ 2019-07-16 20:21 skillking2 阅读(1969) 评论(0) 推荐(0)
摘要:一、题目 1、审题 2、分析 一个非空整形数组,返回数组中出现次数最多的 k 个数。 其中 1 <= k <= 不同的数值个数。 二、解答 1、思路 方法一、 ① 新建一个 List<Integer, Integer>[] : 其中数组下标表示频率(count); List 为数字; ② 新建一个 阅读全文
posted @ 2019-07-15 13:22 skillking2 阅读(169) 评论(0) 推荐(0)
摘要:一、题目 1、审题 2、分析 求所有的单条路径中符合和为 sum 的路径条数。结尾节点不需要为叶子节点。 二、解答 1、思路 方法一、 采用递归的方法。 首先求从 根节点开始的路径满足和为 sum 的条数; 其次求从 根的左孩子节点开始的路径满足和为 sum 的条数; 最终求从 根的右孩子节点开始的 阅读全文
posted @ 2019-07-15 12:56 skillking2 阅读(107) 评论(0) 推荐(0)
摘要:一、题目 1、审题 2、分析 给出数字 num, 求出 0~num 的每个数字的二进制形式中包含的 字符 ‘1‘ 的个数。 二、解答 1、思路 方法一、 依次计算 1~n 每个数字的二进制形式中包含的 ‘1‘ 的个数。 方法二、 采用 f[n] = f[n >> 1] + (n & 1) 计算数字 阅读全文
posted @ 2019-07-01 11:12 skillking2 阅读(130) 评论(0) 推荐(0)