题目如下,
给定一个字符串的集合,格式如:
{aaa bbb ccc}, {bbb ddd},{eee fff},{ggg},{ddd hhh}
要求将其中交集不为空的集合合并,要求合并完成后的集合之间无交集,例如上例应
输出
{aaa bbb ccc ddd hhh},{eee fff}, {ggg}
(1)请描述你解决这个问题的思路;
(2)请给出主要的处理流程,算法,以及算法的复杂度
(3)请描述可能的改进(改进的方向如效果,性能等等,这是一个开放问题)。
我查了查网上的解法,只看到一个(参见http://blog.youkuaiyun.com/lillllllll/article/details/4162605),我有一点新想法,说明如下:
1. 首先得到所有元素的集合(aaa, bbb, ccc, ddd, eee, fff, ggg, hhh),复杂度O(N),N是所有元素的个数;</

本文介绍了一道关于合并有交集集合的算法题,提出了一种新的解决方案。首先,通过O(N)的时间复杂度获取所有元素集合,然后使用二进制标记表示每个集合,接着利用O(M)的时间复杂度递归判断并合并集合。最后,作者认为这种方法相比网上已有的解法有更高的效率,并欢迎讨论和改进。
最低0.47元/天 解锁文章
2247





