Pur*_*ari 1 python swap list indices python-3.x
(不,这不是作业作业,也不是比赛,即使它看起来像是一个.)
我A在Python中有一个包含数字的列表range(0, len(A)).这些数字不是有序的,但它们都存在于列表中.
我正在寻找一种简单的方法来构建一个列表B,其中索引和值已被交换,即一个列表,对于每个整数n,包含nin 的位置A.
例:
A = [0, 4, 1, 3, 2]
B = [0, 2, 4, 3, 1]
Run Code Online (Sandbox Code Playgroud)
我可以将代码B单独生成或生成代码生成A.特别是,我的生成方式A如下:
A = [value(i) for i in range(length)]
Run Code Online (Sandbox Code Playgroud)
最好的方法是什么?
如何分配到预先分配的B:
>>> A = [0, 4, 1, 3, 2]
>>> B = [0] * len(A)
>>> for k, v in enumerate(A): B[v] = k
>>> B
[0, 2, 4, 3, 1]
Run Code Online (Sandbox Code Playgroud)
那将是O(n).
| 归档时间: |
|
| 查看次数: |
928 次 |
| 最近记录: |