快手一面(凉经)
一道sql题
sql慢查询怎么优化
限定查询几行关键字
表的几种连接
去重关键字
为什么想做测开
对测开岗位的理解
介绍后端项目
项目中用到了哪些测试
init的作用
python中列表和数组的区别
定位bug前端还是后端
为什么做自动化测试框架
接口测试关注的指标
手撕计算器
登录测试用例设计
购物车测试用例设计
了解哪些测试用例设计方法
场景法举例
说一下快速排序
了解大模型吗
对于测试有什么帮助
bug生命周期
软件开发生命周期
一个项目上线的标准
tcp和udp的区别
三次握手和四次挥手#测开# #测开#
sql慢查询怎么优化
限定查询几行关键字
表的几种连接
去重关键字
为什么想做测开
对测开岗位的理解
介绍后端项目
项目中用到了哪些测试
init的作用
python中列表和数组的区别
定位bug前端还是后端
为什么做自动化测试框架
接口测试关注的指标
手撕计算器
登录测试用例设计
购物车测试用例设计
了解哪些测试用例设计方法
场景法举例
说一下快速排序
了解大模型吗
对于测试有什么帮助
bug生命周期
软件开发生命周期
一个项目上线的标准
tcp和udp的区别
三次握手和四次挥手#测开# #测开#
全部评论
接好运
佬是面试哪个部门,问这么多
是春招吗
def calculate(s: str) -> int:
def precedence(op):
"""定义运算符优先级:乘除 > 加减"""
return 2 if op in ('*', '/') else 1
def apply_op(a: int, b: int, op: str) -> int:
"""执行运算"""
if op == '+':
return a + b
elif op == '-':
return a - b
elif op == '*':
return a * b
elif op == '/':
return a // b 整数除法,可根据需求改为浮点数除法
预处理:去除空格,大括号转为小括号(仅支持小括号逻辑)
s = s.replace(' ', '').replace('{', '(').replace('}', ')')
nums = [] 数字栈
ops = [] 运算符栈
i = 0
n = len(s)
while i < n:
if s[i].isdigit():
处理多位数(如123)
num = 0
while i < n and s[i].isdigit():
num = num * 10 + int(s[i])
i += 1
nums.append(num)
elif s[i] == '(':
ops.append(s[i])
i += 1
elif s[i] == ')':
遇到右括号,弹出运算符直到左括号
while ops and ops[-1] != '(':
b = nums.pop()
a = nums.pop()
op = ops.pop()
nums.append(apply_op(a, b, op))
ops.pop() 弹出左括号
i += 1
elif s[i] in ('+', '-', '*', '/'):
处理运算符优先级:当前运算符优先级≤栈顶时,先执行栈顶运算
while ops and ops[-1] != '(' and precedence(ops[-1]) >= precedence(s[i]):
b = nums.pop()
a = nums.pop()
op = ops.pop()
nums.append(apply_op(a, b, op))
ops.append(s[i])
i += 1
else:
raise ValueError("无效字符:" + s[i])
处理剩余运算符
while ops:
b = nums.pop()
a = nums.pop()
op = ops.pop()
nums.append(apply_op(a, b, op))
return nums[0]
佬是北京的吗
今天面试?
相关推荐
11-18 20:04
泉州职业技术大学 算法工程师
专业嗎喽:个人信息名字太大,合到电话邮箱那一栏就行,有党员写过党,剩下其他全删,站空太大了
把实习经历丰富,放最前面,然后是个人评价,技能之类的,然后是学校信息。项目经历最后面,可以就选一个自己擅长的。
现在是学校不是92就扣分的,没必要放前面。
然后现在看重实习经历>竞赛经历(校园经历)>课程项目经历 点赞 评论 收藏
分享
查看14道真题和解析 点赞 评论 收藏
分享
