问题陈述:
设计一种算法,给定两个整数列表,创建一个列表 由两个列表中出现的整数组成(每个整数 在最终列表上应该只出现一次)。在中描述您的算法 关注主要算法任务而不是主要算法任务的伪代码 低级细节。分析算法的运行时间。您 只有当你的算法渐近渐近时才会获得完全的功劳 比Θ(n ^ 2)更好的最坏情况性能,其中n是的总和 两个输入列表的长度
有人可以向我解释一下这个问题实际上是我要求我做的吗?
我的尝试:
我的印象是这个问题告诉我要制作一个有两个列表的算法,idk,所以可能是两个数组,一个A,一个B,那些数组将用数字填充,我会同时使用两个那些列表并基本上把它们放在一起?我使用MergeSort对它们进行排序(现在我认为可能不是必需的)然后我使用Merge将两个列表实际放在一起。
问题:
我被告知这是错误的。我想我一定是在混淆这个问题。我也使用合并排序,因为它的O(nlogn)。
我的答案有什么问题,我错过了什么?
答案 0 :(得分:0)
问题要求您找到两个列表中的intersection set,或者换句话说 - 一个列表,其中仅包含A和B中出现的元素(但不包含仅出现在其中一个中的元素)它们)。
您的算法似乎只是组合列表,因此包含仅出现在一个列表中的元素。
有几种方法可以做到:
我故意将实施细节模糊不清,所以你可以自己解决这个任务。
祝你好运!