大家好,日拱一卒,我是梁唐。

今天是周一,我们老规矩来看昨天上午的LeetCode周赛第290场。这一场比赛的赞助商是华为,应该说是目前为止赞助商当中规模最大的公司了。

image.png

个人感觉这一场比赛的题目质量虽然还不错,但设置不是非常合理,原因我之后再说。

这一次发挥也还行,由于错了两次罚时掉出了前200:

image.png

废话不多说了,我们来看题吧。

多个数组求交集

给你一个二维整数数组 nums ,其中 nums[i] 是由 不同 正整数组成的一个非空数组,按 升序排列 返回一个数组,数组中的每个元素在 nums 所有数组 中都出现过。
image.png

题解

比赛的时候比较紧张,拿到手就写,最先写的是暴力求解的思路。由于Python当中list可以直接转换成set,所以就选了Python。

但写了一半的时候发现不对,暴力并不是很好的方法,并且有可能超时。

我们来简单分析一下,首先,我们枚举所有的元素,复杂度是LeetCode周赛290 - 图4,其次我们要遍历所有的set,判断元素是不是在所有的set中都能找到。复杂度是LeetCode周赛290 - 图5。乘在一起,总体的复杂度在
LeetCode周赛290 - 图6