擅长:python、mysql、java
<P>为了参考,下面的代码使用<a href="https://en.wikipedia.org/wiki/Loopless_algorithm" rel="nofollow">Ehrlich's algorithm</a>迭代遍历C++、JavaScript和Python中的多个集合的所有可能组合:</P>
<blockquote>
<p><a href="https://github.com/ekg/multichoose" rel="nofollow">https://github.com/ekg/multichoose</a></p>
</blockquote>
<p>可以使用<a href="https://en.wikipedia.org/wiki/Multiset#/media/File:Combinations_with_repetition;_5_multichoose_3.svg" rel="nofollow">this method</a>将其转换为上述格式。具体来说</p>
<pre><code>for s in multichoose(k, set):
row = np.bincount(s, minlength=len(set) + 1)
</code></pre>
<p>这仍然不是纯粹的numpy,但是可以很快地填充预先分配的<code>numpy.array</code>。在</p>