LeetCode #416:Partition Equal Subset Sum(分割等和子集) 题目描述 本题是比较经典的一个 01 背包问题,把数组和的一半看作背包容量,看数组元素是否能放满背包即可。 阅读全文
LeetCode #617:Merge Two Binary Trees(合并二叉树) 题目描述 本题需要运用树的递归特性求解:当 root1 和 root2 均为空时,返回空;当 root1 和 root2 有一个为空时,返回非空的那个节点;当 root1 和 root2 均不空时,返回合并后的结点。之后在分别递归左右子树。 阅读全文
LeetCode #567:Permutation in String(字符串的排列) 题目描述 本问题是另一道滑动窗口的典型问题。需要特别注意的是滑动窗口边界右移前后都要对字母出现的频次进行判断,因为可能出现右移前(后)频次相等而右移后(前)不等的情况。 阅读全文
LeetCode #3:Longest Substring without Repeating Characters(无重复字符的最长子串) 题目描述 本题是滑动窗口的一道典型题,关键是要分析出可以使用滑动窗口来求解(左右指针不会回溯)、把握住滑动窗口左边界右移的条件。在本题中,当滑动窗口右边界遇到重复字符时,需要将左边界右移,直到左右边界区间的字串无重复字符。需要额外设置一个 hashmap 来记录每个字符的出现次数。 阅读全文