在 Python 中交换偶数索引元素和奇数索引元素

pythonserver side programmingprogramming更新于 2025/12/25 18:20:17

假设我们有一个名为 nums 的数字列表,我们将交换每个连续的偶数索引,并将每个连续的奇数索引相互交换。

因此,如果输入为 [1,2,3,4,5,6,7,8,9],则输出为 [3, 4, 1, 2, 7, 8, 5, 6, 9]

为了解决这个问题,我们将遵循以下步骤 −

  • length := nums 的大小
  • 对于 0 到 length 范围内的 i,增加 4,执行
    • 如果 i+2<length,则
      • 交换 nums[i] 和nums[i+2]
    • 如果 i+3<length,则
      • 交换 nums[i+1] 和 nums[i+3]
  • 返回 nums

让我们看看下面的实现以便更好地理解 −

示例

class Solution:
   def solve(self, nums):
      length = len(nums)
      for i in range(0,length,4):
         if(i+2<length):
            nums[i], nums[i+2] = nums[i+2], nums[i]
         if(i+3<length):
            nums[i+1], nums[i+3] = nums[i+3], nums[i+1]
      return nums
ob = Solution()
nums = [1,2,3,4,5,6,7,8,9]
print(ob.solve(nums))

输入

[1,2,3,4,5,6,7,8,9]

输出

[3, 4, 1, 2, 7, 8, 5, 6, 9]

相关文章


有用资源