<p>我有一个长度为<code>n</code>的数组,我想从中随机选择<code>m</code>个元素并翻转它们的值。最有效的方法是什么?在</p>
<p>有两种情况,<code>m=1</code>是一种特殊情况。可以单独讨论,并且<code>m=/=1</code>。在</p>
<p>我的尝试是:</p>
<pre><code>import numpy as np
n = 20
m = 5
#generate an array a
a = np.random.randint(0,2,n)*2-1
#random choose `m` element and flip it.
for i in np.random.randint(0,n,m):
a[m]=-a[m]
</code></pre>
<p>假设<code>m</code>是十,而{<cd1>}是百。在</p>