python基础实例

没腿的鸟  金牌会员 | 2024-6-26 07:22:02 | 来自手机 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 656|帖子 656|积分 1968

下一个更大的数
界说一个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_)


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

没腿的鸟

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表