农村的阿牛非常喜欢养牛,他想设计一个数据结构来存储他的牛,每头牛都有一个不同的编号和对应的体重。阿牛希望可以在常数时间内得到最重的一头牛的体重,还能随时加入、删除和查询牛的信息。你能帮助阿牛设计这个数据结构吗? 题目描述: 设计一个支持 push ,pop ,top 操作,并能在常数时间内检索到最大权值的牛的体重的数据结构。 实现 MaxCowStack 类: MaxCowStack() 初始化堆栈对象。 void push(int id, int weight) 将编号为 id 且体重为 weight 的牛推入堆栈。 void pop() 删除堆栈顶部的元素。 int top() 获取堆栈顶部的体重。 int getMax() 获取最重一头牛的体重。

区块链毕设网qklbishe.com为您提供问题的解答

农村的阿牛非常喜欢养牛,他想设计一个数据结构来存储他的牛,每头牛都有一个不同的编号和对应的体重。阿牛希望可以在常数时间内得到最重的一头牛的体重,还能随时加入、删除和查询牛的信息。你能帮助阿牛设计这个数据结构吗?

题目描述:

设计一个支持 push ,pop ,top 操作,并能在常数时间内检索到最大权值的牛的体重的数据结构。

实现 MaxCowStack 类:

MaxCowStack() 初始化堆栈对象。
void push(int id, int weight) 将编号为 id 且体重为 weight 的牛推入堆栈。

void pop() 删除堆栈顶部的元素。
int top() 获取堆栈顶部的体重。
int getMax() 获取最重一头牛的体重。
纯动态写法
#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
#
# @param op string字符串一维数组
# @param vals int整型二维数组
# @return int整型一维数组
#
class MaxCowStack(object):

def __init__(self) -> None:
self.data = []
self.max_cow = []

def push(self, id, weight):
# 暂时不考虑编号
self.data.append(weight)
if not self.max_cow:
self.max_cow.append(weight)
if weight > self.max_cow[-1]:
self.max_cow.append(weight)
return1

def pop(self, *args):
top_weight = self.data.pop()
# 是否要删除
if self.max_cow and top_weight == self.max_cow[-1]:
self.max_cow.pop()
return1
def top(self, *args):
return self.data[-1]
def getMax(self, *args):
return self.max_cow[-1]

class Solution:
def max_weight_cow(self , op: List[str], vals: List[List[int]]) -> List[int]:
# write code here
obj = None
ans = []
for o, val in zip(op, vals):
if o == ‘MaxCowStack’:
# init MaxCowStack
obj = globals()[o]()
ans.append(-1)
continue
ans.append(getattr(obj, o)(*val))
return ans

14:51

以上就是关于问题农村的阿牛非常喜欢养牛,他想设计一个数据结构来存储他的牛,每头牛都有一个不同的编号和对应的体重。阿牛希望可以在常数时间内得到最重的一头牛的体重,还能随时加入、删除和查询牛的信息。你能帮助阿牛设计这个数据结构吗? 题目描述: 设计一个支持 push ,pop ,top 操作,并能在常数时间内检索到最大权值的牛的体重的数据结构。 实现 MaxCowStack 类: MaxCowStack() 初始化堆栈对象。
void push(int id, int weight) 将编号为 id 且体重为 weight 的牛推入堆栈。 void pop() 删除堆栈顶部的元素。 int top() 获取堆栈顶部的体重。 int getMax() 获取最重一头牛的体重。的答案

欢迎关注区块链毕设网-
专业区块链毕业设计成品源码,定制。

区块链NFT链游项目方科学家脚本开发培训

从业7年-专注一级市场


微信:btc9767
TELEGRAM :https://t.me/btcok9

具体资料介绍

web3的一级市场千万收益的逻辑


进群点我



qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台-javagopython毕设 » 农村的阿牛非常喜欢养牛,他想设计一个数据结构来存储他的牛,每头牛都有一个不同的编号和对应的体重。阿牛希望可以在常数时间内得到最重的一头牛的体重,还能随时加入、删除和查询牛的信息。你能帮助阿牛设计这个数据结构吗? 题目描述: 设计一个支持 push ,pop ,top 操作,并能在常数时间内检索到最大权值的牛的体重的数据结构。 实现 MaxCowStack 类: MaxCowStack() 初始化堆栈对象。 void push(int id, int weight) 将编号为 id 且体重为 weight 的牛推入堆栈。 void pop() 删除堆栈顶部的元素。 int top() 获取堆栈顶部的体重。 int getMax() 获取最重一头牛的体重。