【发布时间】:2016-12-27 23:47:14
【问题描述】:
我正在考虑最快的算法,以从 n 个元素的数组中返回唯一 3 个元素的所有组合。显而易见的一个是 O(n^3) 解决方案,它考虑了所有可能的组合,但这是蛮力的,我打算更快地找到一些东西。在 C++ 中寻找答案
【问题讨论】:
-
如果你真的需要“所有”组合,不可能比 O(n^3) 更快,因为输出的大小已经是 O(n^3)。
-
抱歉,我正在考虑独特的解决方案。我要编辑问题
-
独特的解决方案是什么意思?
-
这意味着,我正在寻找包含 3 个元素的组合,但没有重复相同的组合。如果组合与其他组合至少有一个元素不同(在我的问题中它是数组元素的索引),我会认为它是唯一的