【发布时间】:2018-11-02 14:09:57
【问题描述】:
需要帮助用算法解决这个问题... 给定两个集合 A 和 B,分别具有 m 和 n 个元素,来自线性顺序。这些集合不一定是排序的。还假设 m ≤ n。展示如何在 O(nlogm) 时间内计算 A∪B 和 A ∩ B。
【问题讨论】:
-
其实你可以比
O(n * log m)用HashMap做得更好。 -
@vivek_23 或更糟,具体取决于您的哈希密钥生成策略。在最坏的情况下,如果你有太多的碰撞,你运行的时间复杂度可能会下降到 O(n * m)。
-
@nellex 同意,但我认为该语言提供的地图功能会实现强大的哈希函数以减少冲突。
标签: algorithm set time-complexity array-algorithms