大厂加班强度表,好像有点准。。
刚看到个贴子,有人总结了个“大厂加班强度表”,把各家公司的加班节奏整得明明白白,好家伙,一个比一个卷
但我觉得背后其实反映的是职场人的无奈和自嘲。
网友们看似是在“玩梗”,其实是拿调侃当止痛药。不少人在评论区说“心里苦但不敢说”,说明这已经不是个例,而是行业普遍现象了。
不过话说回来,凡是能“准”到这种程度的东西,往往都已经成了默契——加班不是例外,而是默认选项。从我的角度看,这就是对性价比的重新计算:你拿的是高薪,但也得接受透支生活的代价。
总的来说还是那句话,别光盯着工资多高,看看自己还剩多少时间活得像个人【备注:文末可领最新资料】
面试题:公交路线
“公交路线”这题,其实蛮有意思的,说白了就是个图的最短路径问题,只不过披了一层“通勤优化”的皮。大厂面试老爱拿这种题考你图论和BFS/DFS功底,要是你思维不够清晰,分分钟就栽了。
先捋一下题意:你给一堆公交路线,每条路线是一组公交车站的集合,比如 [[1,2,7], [3,6,7]],你得从某个起点站 S 去终点站 T,问你至少坐几辆公交能到。听起来简单?👀 实则一堆坑。
第一反应有人可能会想到把站点当成图的节点,两个站点连一条边表示能互相到达。但你这样建图就走偏了——公交不是打车,不是你站和站想去哪就去哪,而是你得按“车”走,车怎么走你就得怎么走。
正确的姿势是:把“公交路线”当作图里的节点,而不是“站点”。什么意思?就是说两个公交路线如果有站点重合,说明你可以从这辆车“转乘”到另一辆车。比如 7 这个站点在两条路线里都有,那就可以在这转车。所以你得基于“路线”建图,谁和谁有交集谁就连边。
具体怎么做?上代码吧,Python 的 BFS 走起:
from collections import defaultdict, deque
defnum_buses_to_destination(routes, source, target):
if source == target:
return0
# 映射站点 -> 所有经过它的公交路线编号
station_to_routes = defaultdict(set)
for i, route in enumerate(routes):
for station in route:
station_to_routes[station].add(i)
# 构建图:路线之间是否可以换乘
route_graph = defaultdict(set)
for stations in station_to_routes.values():
for r1 in stations:
for r2 in stations:
if r1 != r2:
route_graph[r1].add(r2)
# 起点可以坐的所有路线
start_routes = station_to_routes[source]
# 终点可以到达的所有路线
target_routes = station_to_routes[target]
# BFS
visited = set()
queue = deque()
for route in start_routes:
queue.append((route, 1))
visited.add(route)
while queue:
current_route, bus_count = queue.popleft()
if current_route in target_routes:
return bus_count
for neighbor in route_graph[current_route]:
if neighbor notin visited:
visited.add(neighbor)
queue.append((neighbor, bus_count + 1))
return-1
关键逻辑有几个点要说清楚:
🚏 每个站点可能在多个路线中出现,这是构建图的“连接点”,也是转乘的依据; 🚌 BFS 不是从站点出发,而是从“路线”出发——你坐上哪辆车了,而不是你在哪个站; 🔄 每转一次车,bus_count +1,所以到达终点路线就是最少转车次数。
有人可能会问了:“为什么不从站点做BFS呢?站点到站点不是更直观?”表面上看是的,但你一转车就得处理一堆冗余状态,而且站点太多,状态爆炸,复杂度直接起飞。而用路线做状态,复杂度压得死死的,毕竟路线数量是远小于站点数量的。
这题也特别像现实开发里那种“需求拐着弯考你功底”的套路:接口说得云里雾里,其实核心逻辑就是个“换乘图最短路径”。所以,兄弟们,刷题别只看表面,要学会“题设建模”,你看到的是“公交”,脑子里想的是“图结构”。
顺便吐个槽,这题真上生产了,那得加上站点实时拥堵数据、公交是否延迟、天气影响之类的,BFS都得改成Dijkstra加动态权重了...不过面试官一般没那么狠,放心刷。
就酱,祝你坐公交比算法顺多了!
-END-
我为大家打造了一份RPA教程,完全免费:https://www.songshuhezi.com/rpa.html
虎哥作为一名老码农,整理了全网最全《python高级架构师资料合集》,总量高达650GB,点击下方公众号回复关键字 python 全部免费领取