用 Python 中左侧最小项替换每个元素的程序

pythonserver side programmingprogramming更新于 2026/1/10 21:00:17

假设我们有一个名为 nums 的数字列表,我们必须用 i 左侧最小的元素替换每个 nums[i]。我们必须将 nums[0] 替换为 0。

因此,如果输入为 [15, 7, 9, 16, 12, 25],则输出将为 [0, 15, 7, 7, 7, 7]

要解决这个问题,我们将遵循以下步骤 −

  • 如果 nums 为空,则
    • 返回一个新列表
  • j:= nums[0]
  • nums[0]:= 0
  • 对于 i,范围从 1 到 nums 的大小 - 1,执行
    • k:= nums[i]
    • nums[i]:= j
    • j:= minimum of j, k
  • 返回 nums

让我们看看下面的实现以便更好地理解 −

示例

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

输入

[15, 7, 9, 16, 12, 25]

输出

[0, 15, 7, 7, 7, 7]

相关文章


有用资源