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ố
itừ 0 đến độ dàinums:- Nếu
nums[i] % 2 == 0:- Nếu
temp is not None→ hoán đổinums[i]vànums[temp], đặttemp = None - Ngược lại →
temp = i
- Nếu
- Nếu
- 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]