สมมติว่าเรามีรายการตัวเลขที่เรียกว่า nums เราต้องแทนที่ทุก ๆ nums[i] ด้วยองค์ประกอบที่เล็กที่สุดที่เหลืออยู่ของ i เราต้องแทนที่ nums[0] ด้วย 0
ดังนั้น หากอินพุตเป็น [15, 7, 9, 16, 12, 25] เอาต์พุตจะเป็น [0, 15, 7, 7, 7, 7]
เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -
- ถ้า nums ว่างเปล่าก็
- คืนรายการใหม่
- j:=nums[0]
- nums[0]:=0
- สำหรับฉันในช่วง 1 ถึงขนาดของ nums - 1 ทำ
- k:=nums[i]
- nums[i]:=j
- j:=ขั้นต่ำของ j, k
- หมายเลขส่งคืน
ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -
ตัวอย่าง
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]