Duyệt qua danh sách (trừ phần tử đầu và cuối), thay thế phần tử hiện tại bằng giá trị lớn hơn giữa hàng xóm trái và hàng xóm phải.
Ví dụ
Minh họa:
my_list = [41, 25, 24, 45, 86, 37, 18, 99]
print("Danh sách gốc:", my_list)
for index in range(1, len(my_list) - 1):
my_list[index] = my_list[index - 1] if my_list[index - 1] > my_list[index + 1] else my_list[index + 1]
print("Danh sách kết quả:", my_list)
Kết quả
Danh sách gốc: [41, 25, 24, 45, 86, 37, 18, 99] Danh sách kết quả: [41, 41, 45, 86, 86, 86, 99, 99]
Giải thích
- Duyệt từ index 1 đến len-2.
- So sánh
my_list[index-1]vàmy_list[index+1]. - Gán phần tử hiện tại = max của hai hàng xóm.
- Phần tử đầu và cuối giữ nguyên.