0
我正在寻找从长度为k的int数组中获取所有可能的长度为n的int数组的最佳方法,其中包含n-1个项目为null的选项。 例如我有5个单元(k = 5)的阵列和我想的3的所有组合(N = 3)的长度3的从长度为k的数组获得n上的所有组
int[] numbers = new int[5] {1, 2, 3, 4, 5};
和可能的子阵列:
{1, null,null},{1,null,2},{1,2,null} .....等等。
什么是最好的方法来做到这一点? Matan
我目前对此毫无头绪,试图从互联网上获取有关处理该问题的最佳方法的信息。我发现了一些很好的算法,但它不包含无效的可能性。 –
看看这个解决方案:http://stackoverflow.com/a/10630026。它会给你所有的排列,没有null值。在这个例子中,将'Enumerable.Range(1,3)'替换为你的'numbers'变量。 – Serge
谢谢,这很好,但我的空选项需要在我的需要 –