我写了一个简单的代码,两个在列表中交换两个项目,使用非常基本的:
a, b = b, a代码如下所示:
nums[i], nums[nums[i] - 1] = nums[nums[i] - 1], nums[i]上面的交换导致了一个无限循环,其中条目在列表中重复,因此无法交换。但将其修改为以下内容:
nums[nums[i] - 1], nums[i] = nums[i], nums[nums[i] - 1]交换是否因为交换变量的顺序而不起作用。
如果是这样的话,它是如何逻辑的?我遗漏了什么?
发布于 2020-05-06 21:51:17
def swap(index1, index2, list_):
a, b = list_[index1], list_[index2]
list_[index1], list_[index2] = b, a
return list_可以使用这样的函数,传入列表和要交换的项目的列表索引,然后返回交换的项目的列表。对此可能有更短的解决方案,但这绝对是一种方法
https://stackoverflow.com/questions/61635677
复制相似问题