美团转正实习已offer

一面时间:2025-04-07
二面时间:2025-04-09
OC+邮件offer时间:2025-04-16
一面算法题:一题sql(需要子查询)、算法动态规划(最长有效的括号数)
二面算法:一个简单的sql(group by having),一个线程池的计算题见下,一个随机链表复制题目,一道模板设计模式的题目见后

1.二面算法题
考了一个模板模式设计计算器(当时没写出来,下面补充)
from abc import ABC, abstractmethod

class Calculator(ABC):
    def calculate(self, a, b):
        self.pre_process(a, b)
        result = self.do_calculation(a, b)
        self.post_process(result)
        return result

    @abstractmethod
    def do_calculation(self, a, b):
        pass

    def pre_process(self, a, b):
        print(f"准备计算: {a} 和 {b}")

    def post_process(self, result):
        print(f"计算结果是: {result}")

class AdditionCalculator(Calculator):
    def do_calculation(self, a, b):
        return a + b

class SubtractionCalculator(Calculator):
    def do_calculation(self, a, b):
        return a - b

# 使用示例
if __name__ == "__main__":
    add_calculator = AdditionCalculator()
    print(add_calculator.calculate(5, 3))  # 输出: 8

    sub_calculator = SubtractionCalculator()
    print(sub_calculator.calculate(5, 3))  # 输出: 2

2.计算题:线程池10核心线程数,100最大线程数,1000是阻塞队列的大小,每个接口处理需要500ms,接口请求的最大阻塞等待800ms,请问线程池的QPS有多少
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务