Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Hoán đổi các phần tử chẵn liên tiếp trong Python

Cho danh sách nums, hoán đổi từng cặp số chẵn liên tiếp.

Ví dụ: nums = [4, 5, 6, 8, 10] → kết quả [6, 5, 4, 10, 8].

Các bước giải quyết

  • temp = None
  • Duyệt chỉ số i từ 0 đến độ dài nums:
    • Nếu nums[i] % 2 == 0:
      • Nếu temp is not None → hoán đổi nums[i] và nums[temp], đặt temp = None
      • Ngược lại → temp = i
  • Trả về nums

Ví dụ mã Python

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]))

Đầu vào

[4, 5, 6, 8, 10]

Đầu ra

[6, 5, 4, 10, 8]