【发布时间】:2020-01-03 21:45:43
【问题描述】:
给定一组集合,找出不属于的集合:
示例:[[a,b,c,d], [a,b,f,g], [a,b,h,i], [j,k,l,m]]
输出:[j,k,l,m]我们可以在上面看到前三个集合有一个公共子集 [a,b] 而最后一个没有。注意:可能存在异常值集确实包含输入组中的元素的情况。在这种情况下,我们必须找到与其他集合最少相同的集合。
我尝试遍历输入列表并为每个字符(在哈希中)保持计数。
在第二遍中,找出哪个集合的总数最小。
在上面的示例中,最后一组的计数总和为 4:
j*1 + k*1 + l*1 + m*1。
我想知道是否有更好的方法来做到这一点。
【问题讨论】:
-
与语言无关的算法问题有一个尝试,但这篇文章的标题很笼统。你能更新它以更好地反映具体问题吗?谢谢你。另一个问题:这里的每个列表/集合中的项目是什么数据类型?
-
它是一个二维字符串数组,每个字符串是一个字母。
-
谢谢。更新问题
-
那么——其他地方给出的解决方案有什么不满意的地方?