阅读历史 |

第121章 T厂技术一面(1 / 2)

加入书签

请关闭浏览器的阅读/畅读/小说模式并且关闭广告屏蔽过滤功能,避免出现内容无法显示或者段落错乱。

上午九点五十分,林晨坐在T厂大楼三十二层的一间小型会议室里。

会议室不大,约十平米,一张长方形会议桌,四把椅子,墙上挂着白板。窗户朝东,晨光透过百叶窗在地板上投下斑驳的光影。空气里有淡淡的消毒水味和咖啡香——典型的互联网公司气味。

林晨提前二十分钟到达。前台核对信息后,一位年轻的HR实习生将他领到这里,递上一瓶矿泉水,礼貌地说面试官马上就到。

他打开笔记本电脑,连接电源,再次检查网络。视频面试链接已经发到邮箱,但他被通知第一轮是现场面试。也好,面对面更能展现状态。

九点五十五分,门被推开。

进来的是个三十出头的男性,短发,戴黑框眼镜,穿着深灰色T恤,胸口印着T厂的logo。他手里拿着iPad和一支笔,步伐轻快。

“林晨是吧?我是王磊,AI平台部的算法工程师,今天由我来做技术一面”。他伸出手,笑容温和但透着专业感。

林晨起身握手:“王老师好,我是林晨”。

“坐坐,别客气”。王磊在对面坐下,打开iPad,“简历我看过了,十年跨境电商经验,最近半年自学AI,还做了个量化投资系统”?

“是的”。林晨点头,心里快速调整状态——苏婉说得对,不是接受考核,是展示价值。

“那我们直接开始吧”。王磊推了推眼镜,“先做两道算法题,可以吗”?

“没问题”。

王磊在iPad上操作几下,将屏幕转向林晨。是T厂内部的在线编程平台界面,题目已经加载。

第一题:寻找旋转排序数组中的最小值II

题目描述:假设一个按升序排列的数组在某个未知点上进行了旋转(例如,数组[0,1,2,4,5,6,7]可能变成[4,5,6,7,0,1,2])。数组中可能包含重复元素。请编写一个函数,找出其中最小的元素。

难度标签:Hard。

林晨扫了一眼题目。这是二分查找的变种,经典难题。他曾在LeetCode上刷过类似的题,但包含重复元素会增加复杂度。

“可以用这个平台写,也可以在白板上写思路”。王磊说。

“我直接写代码吧”。林晨将笔记本电脑转向自己,打开编程界面。

手指落在键盘上时,他深吸一口气。这半年,他刷了超过三百道算法题,从Easy到Hard,从数组到图论。失业的压力转化为刷题的动力,常常一天八小时坐在电脑前,直到眼睛发酸。

此刻,那些深夜的坚持开始兑现。

他先写下函数签名,然后快速分析:因为有重复元素,当nus[id]==nus[right]时,无法判断最小值在左侧还是右侧,此时只能将右指针减一。时间复杂度最坏会退化到O(n),但平均仍是O(logn)。

指尖在键盘上飞舞:

deffdM(nus):

left,right=0,len(nus)-1

whileleft<right:

id=left+(right-left)//2

ifnus[id]>nus[right]:

left=id+1

elifnus[id]<nus[right]:

right=id

else:#nus[id]==nus[right]

right-=1

returnnus[left]

写完,他检查了一遍边界条件,点击运行。

测试用例通过。

“AC了”。王磊看着iPad上的反馈,点点头,“时间三分十二秒,很快。能解释一下为什么nus[id]==nus[right]时要right-=1吗”?

林晨转向白板,画了一个数组示意图:“比如[3,3,1,3],初始时left=ht=3,id=1。nus[1]=3,nus[3]=3,相等。此时我们无法判断最小值在左边还是右边,但可以确定的是,去掉最右边的元素不会丢掉最小值,因为nus[right]和nus[id]相等,所以可以安全地将right减一”。

“正确”。王磊在iPad上做了记录,“下一题”。

第二题:接雨水II

题目描述:给定一个xn的矩阵,其中的值均为正整数,代表二维高度图。请计算这个形状可以接多少雨水。

难度标签:Hard。

二维接雨水,比一维难得多。林晨记得这道题要用最小堆(优先队列)加BFS的思路。他从边界开始,将最低的柱子作为“水桶”的短板,向内推进。

思路清晰后,他再次开始编码。这次花了些时间,约八分钟。

iportheapq

deftrapRaWater(heightMap):

ifnotheightMap:

return0

,n=leMap),leMap[0])

if<3orn<3:

return0

visited=[[False]*nfor_range]

heap=[]

#将边界加入堆

forirange:

heapq.heapph(heap,(heightMap[i][0],i,0))

↑返回顶部↑

书页/目录

都市重生相关阅读: 天才操盘,从助理到资本掌舵人 风水相术大师 红颜如月,我以诗心照山河 半岛重生:与星光交织的科技人生 龙珠:赛亚人传说 养成大唐,攻打天庭 红楼之周瑜穿成贾琏 渣夫兼祧两房,我噶他全家跑路 重生八零:恶婆婆重整家风养全家 老实女人把顶级大佬强制了 红楼:庶子贾琮,开局收保护费 嫡女谋:寒鸦权倾京华 穿越古代,化学博士的乱世强军策 走马藏局 快穿:我在年代文里当极品 八零前妻要再婚,前夫半夜爬墙来 替嫁冲喜后,病王爷他活了 满级人类上综艺,天后求我复合 开局一九五九:媳妇伴我守山屯 教书先生不装了,我是亡国太子 综影视明菲 师尊太霸道孝心变质了 沉睡千年,老婆后人来挖我坟了 继母逼我捐骨髓,我反手打脸渣爹 穿越到提瓦特世界 综:都成神了为什么还要打工?! 游戏入侵:我的属性疯狂内卷 海贼:知识的力量,你接得住吗? 极道:从黑水棚乞儿开始武道成圣 血色江湖:华北黑道三十年 小漂亮万人迷不想当炮灰npc 穿越,我竟成了女主的白月光 南北朝:我用阴司权柄成阴帝 如来神掌之低谷涅盘 直播粉丝每人每天给我一块钱 网游之末日审判 港综:开局扫你几条街 一人:晒太阳就变强,吓哭老天师 我的收集游戏太奇怪了 拒婚娘娘,我靠系统成神了 综影视之星空之下 原神:刚写日记,雷神追杀三千里 千寻坊 系统说我是捞女,但我只想考公 九天雷尊劫 金枝御业 汉末:北地王三造大汉 九变吞天 真的假的,从首都转来羊城上学? 天道丹途 工科小伙闯明末 亮剑这个李云龙不一样 七零甜宠:冷面硬汉的娇妻撩又野 我是丘比特 末世基建:我的基地车能升级 炮灰未婚妻:从碾压龙傲天开始 百炼凡躯问仙途 洪荒:重生东王公,我拒做棋子 星尘里的糖 霍格沃兹魔法使