用 Python 交换连续偶数元素


假设我们有一个名为 nums 的数字列表,我们必须交换每个连续偶数整数。

因此,如果输入为 nums = [4, 5, 6, 8, 10],则输出将为 [6, 5, 4, 10, 8]

为了解决此问题,我们将按照以下步骤执行操作 -

  • temp := null
  • 对 0 到 nums 大小的范围内的 i 进行操作,执行以下操作
    • 如果 nums[i] 模 2 等于 0,则
      • 如果 temp 不为 null,则
        • 交换 nums[i], nums[temp]
        • temp := null
      • 否则,
        • temp := i
  • 返回 nums

让我们看看以下实现,以便更好地理解 -

示例

 在线演示

class Solution:
   def solve(self, nums):
      temp = None
      for i in range(len(nums)):
         if nums[i] % 2 == 0:
            if temp is not None:
               nums[i], nums[temp] = nums[temp], nums[i]
               temp = None
            else:
               temp = i
      return nums
ob = Solution()
print(ob.solve([4, 5, 6, 8, 10]))

输入

[4, 5, 6, 8, 10]

输出

[6, 5, 4, 10, 8]

更新于:2020 年 9 月 22 日

495 次浏览

开始您的 职业

通过完成课程获得认证

开始
广告