下一个更大的数
定义一个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:
 answer[stack[-1]] = x
 del stack[-1]
 stack.append(x)
 # 遍历stack中的数字,将其加入答案字典并设置为-1
 for x in stack:
 answer[x] = -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_)