下一个更大的数
定义一个Solution类,用于实现next_great方法
class Solution:
def next_great(self, nums1, nums2):
初始化一个空字典answer,用于存储答案
answer = {}
初始化一个空列表stack,用于存储待比较的数字
stack = \[\]
遍历nums2中的数字
for x in nums2:
当stack非空且stack-1<x时,说明stack中的数字小于x,将其加入答案字典并删除stack
while stack and stack-1 < x:
answerstack\[-1] = x
del stack-1
stack.append(x)
遍历stack中的数字,将其加入答案字典并设置为-1
for x in stack:
answerx = -1
返回nums1中数字的答案
return answer\[x for x in nums1]
定义一个主函数,用于测试Solution类的next_great方法
if name == 'main ':
定义一个示例数组nums1和nums2
nums1 = 4, 1, 2
nums2 = 1, 3, 4, 2
创建一个Solution类的实例solution
solution = Solution()
调用next_great方法,传入nums1和nums2作为参数
list_ = solution.next_great(nums1, nums2)
打印答案
print(list_)