Cho danh sách nums, thay thế mỗi nums[i] bằng phần tử nhỏ nhất ở bên trái của nó. nums[0] thay bằng 0.
Ví dụ
Đầu vào: [15, 7, 9, 16, 12, 25].
Đầu ra: [0, 15, 7, 7, 7, 7].
Thuật toán
- Nếu rỗng trả về danh sách rỗng.
- Lưu
j = nums[0], đặtnums[0] = 0. - Duyệt
itừ 1 đến cuối:- Lưu
k = nums[i]. - Gán
nums[i] = j. - Cập nhật
j = min(j, k).
- Lưu
- Trả về
nums.
Mã nguồn Python
class Solution:
def solve(self, nums):
if not nums:
return []
j = nums[0]
nums[0] = 0
for i in range(1, len(nums)):
k = nums[i]
nums[i] = j
j = min(j, k)
return nums
ob = Solution()
nums = [15, 7, 9, 16, 12, 25]
print(ob.solve(nums))
Đầu vào / Đầu ra
Input: [15, 7, 9, 16, 12, 25]
Output: [0, 15, 7, 7, 7, 7]