【发布时间】:2020-12-06 13:50:13
【问题描述】:
考虑一个数组:
a=[0,1,2,3,4,5,6,...99]
我想对其进行洗牌,以使每个元素都有望在其开始的位置结束;即 0 预计将在位置 0 结束,1 预计将在位置 1 结束,2 预计将在位置 2 结束。
我也希望能够将其用于通用数组。
编辑:
我已经取得了一些进展,我认为由于问题引起了一些混乱,人们可能会发现这更容易。
a = ['a','b','c']
b = list(range(0,len(a)))
c = np.random.normal(0,1,len(a))
d = b+c
np.sort(d)
最后一行返回按 d 排序的 d。我想将a的元素按d排序。即,我想在此排序中将应用于 d 的任何映射应用于a。
【问题讨论】:
-
到目前为止您尝试了什么,请发布您的代码
-
我对 python 还很陌生,所以我不能很快地做事情,但是你可以通过添加包含每个元素索引的第二行来获得正确的随机播放,添加一个正常分布的随机变量到该行中的每个元素,然后按第二行排序,然后将其删除。
-
您能否详细说明您的问题。 “预期元素”是什么意思
-
^ 为了更清楚,我重写了问题。
-
当你不需要改变位置时你会洗牌吗?