LEETCODE 811. Subdomain Visit Count 解题思路分析

题目大意:

子域名访问计数

一个网站域名,如”discuss.leetcode.com”,包含了多个子域名。作为顶级域名,常用的有”com”,下一级则有”leetcode.com”,最低的一级为”discuss.leetcode.com”。当我们访问域名”discuss.leetcode.com”时,也同时访问了其父域名”leetcode.com”以及顶级域名 “com”。

给定一个带访问次数和域名的组合,要求分别计算每个域名被访问的次数。其格式为访问次数+空格+地址,例如:”9001 discuss.leetcode.com”。

接下来会给出一组访问次数和域名组合的列表cpdomains 。要求解析出所有域名的访问次数,输出格式和输入格式相同,不限定先后顺序。

继续阅读
发表在 leetcode | 标签为 , , | 留下评论

LEETCODE 250. Count Univalue Subtrees 解题思路分析

题目大意:

统计同值子树

给定一棵二叉树,请统计出所有的同值子树。

同值子树的定义为:该子树的所有节点值相同。

继续阅读
发表在 leetcode | 标签为 , , , | 留下评论

LEETCODE 828. Unique Letter String 解题思路分析

题目大意:

独特字符串

如果一个字符在字符串 S 中有且仅有出现一次,那么我们称其为独特字符。

例如,在字符串 S = “LETTER” 中,”L” 和 “R” 可以被称为独特字符。

我们再定义 UNIQ(S) 作为字符串 S 中独特字符的个数。

那么,在 S = “LETTER” 中, UNIQ(“LETTER”) =  2。

对于给定字符串 S,计算其所有非空子串的独特字符的个数(即 UNIQ(substring))之和。

如果在 S 的不同位置上出现两个甚至多个相同的子串,那么我们认为这些子串是不同的。

考虑到答案可能会非常大,规定返回格式为:结果 mod 10 ^ 9 + 7。

继续阅读
发表在 leetcode | 标签为 , , | 留下评论

LEETCODE 218. The Skyline Problem 解题思路分析

题目大意:

天际线问题

城市的天际线是从远处观看该城市中所有建筑物形成的轮廓的外部轮廓。现在,假设您获得了城市风光照片(图A)上显示的所有建筑物的位置和高度,请编写一个程序以输出由这些建筑物形成的天际线(图B)。

继续阅读
发表在 leetcode | 标签为 , , | 留下评论

LEETCODE 655. Print Binary Tree 解题思路分析

题目大意:

输出二叉树

在一个 m*n 的二维字符串数组中输出二叉树,并遵守以下规则:

  • 数 m 应当等于给定二叉树的高度。
  • 列数 n 应当总是奇数。
  • 根节点的值(以字符串格式给出)应当放在可放置的第一行正中间。根节点所在的行与列会将剩余空间划分为两部分(左下部分和右下部分)。你应该将左子树输出在左下部分,右子树输出在右下部分。左下和右下部分应当有相同的大小。即使一个子树为空而另一个非空,你不需要为空的子树输出任何东西,但仍需要为另一个子树留出足够的空间。然而,如果两个子树都为空则不需要为它们留出任何空间。
  • 每个未使用的空间应包含一个空的字符串””。
  • 使用相同的规则输出子树。
继续阅读
发表在 leetcode | 标签为 , , , , | 留下评论

LEETCODE 567. Permutation in String 解题思路分析

题目大意:

字符串的排列

给定两个字符串 s1 和 s2,写一个函数来判断 s2 是否包含 s1 的排列。

换句话说,第一个字符串的排列之一是第二个字符串的子串。

继续阅读
发表在 leetcode | 标签为 , , , | 留下评论

LEETCODE 320. Generalized Abbreviation 解题思路分析

题目大意:

列举单词的全部缩写

请你写出一个能够举单词全部缩写的函数。

注意:输出的顺序并不重要。

继续阅读
发表在 leetcode | 标签为 , , | 留下评论

LEETCODE 1298. Maximum Candies You Can Get from Boxes 解题思路分析

题目大意:

给你 n 个盒子,每个盒子的格式为 [status, candies, keys, containedBoxes] ,其中:

  • 状态字 status[i]:整数,如果 box[i] 是开的,那么是 1 ,否则是 0 。
  • 糖果数 candies[i]: 整数,表示 box[i] 中糖果的数目。
  • 钥匙 keys[i]:数组,表示你打开 box[i] 后,可以得到一些盒子的钥匙,每个元素分别为该钥匙对应盒子的下标。
  • 内含的盒子 containedBoxes[i]:整数,表示放在 box[i] 里的盒子所对应的下标。

给你一个 initialBoxes 数组,表示你现在得到的盒子,你可以获得里面的糖果,也可以用盒子里的钥匙打开新的盒子,还可以继续探索从这个盒子里找到的其他盒子。

请你按照上述规则,返回可以获得糖果的 最大数目 

继续阅读
发表在 leetcode | 标签为 , , | 留下评论

LEETCODE 1297. Maximum Number of Occurrences of a Substring 解题思路分析

题目大意:

子串的最大出现次数

给你一个字符串 s ,请你返回满足以下条件且出现次数最大的 任意 子串的出现次数:

  • 子串中不同字母的数目必须小于等于 maxLetters 。
  • 子串的长度必须大于等于 minSize 且小于等于 maxSize 。
继续阅读
发表在 leetcode | 标签为 , , , | 留下评论

LEETCODE 1296. Divide Array in Sets of K Consecutive Numbers 解题思路分析

题目大意:

划分数组为连续数字的集合

给你一个整数数组 nums 和一个正整数 k,请你判断是否可以把这个数组划分成一些由 k 个连续数字组成的集合。
如果可以,请返回 True;否则,返回 False。

继续阅读
发表在 leetcode | 标签为 , , | 一条评论