मान लीजिए हमारे पास 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
- i को 1 से nums के आकार -1 तक के लिए करें:
- k := nums[i]
- nums[i] := j
- j := min(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]