У меня есть массив с длиной n
, я хочу случайным образом выбрать из него m
элементов и перевернуть их значение. Каков наиболее эффективный способ?случайные значения flip m из массива
есть два случая, m=1
кейс специальный чехол. Это можно обсудить отдельно, и m=/=1
.
Моя попытка:
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]
Пусть m
десятки и n
сотни.
Определить эффективность. Кроме того, каковы приблизительные значения n и m? Самый эффективный метод для некоторых значений, возможно, не самый эффективный для других. – cammil
@cammil См. Edit – buzhidao