否为回文。
第三道:用递归实现斐波那契数列的第N项,并说明递归方案的缺陷及优化方向。
顾屿差点没绷住。
冒泡排序。回文判断。斐波那契递归。
这三道题,对顾屿来说实在太小儿科了。
前世他创业没钱雇人,产品、开发、测试全是他一个人硬扛,硬生生被逼成了个全栈野路子。
这种感觉怎么形容呢。
大概就是让一个开了十五年卡车的老司机,去考科目一的口头题:“红灯亮了应该怎么办?”
顾屿拿起旁边的圆珠笔。
第一道题。
他没用标准教科书的写法。
手起笔落,直接写了一版双向冒泡排序的优化变体,减少了接近一半的无效遍历。
时间复杂度分析写了三行,从最优O(n)到最差O(n²),顺带提了一句在近乎有序的数据集上,插入排序的常数项优势更大。
第二道题。
回文判断。
他用双指针法写完,又在旁边补了一行注释:若输入是UniCOde字符串,需额外处理代理对的边界情况。
第三道题。
斐波那契递归。
顾屿写完朴素递归版本后,在下面画了一棵递归树,标注了大量重复子问题。
然后给出了两种优化方案:备忘录法和自底向上的动态规划。
最后,他在纸张空白处加了一行小字:“如果N极大且只需精确值,建议用矩阵快速幂,时间复杂度可压到O(lOgN)。”
全程不到四分钟。
顾屿把笔放下,把那张A4纸推回去。
瘦高个接过来,低头扫了一眼。
他的表情变化很有层次。
先是例行公事的随意一瞥。
然后眉头拧了一下。
然后眼球开始快速左右移动,像是在逐行校验代码逻辑。
然后他的嘴巴微微张开了。
旁边一个圆脸男生凑过来看了一眼,低声说了句什么。
瘦高个没理他,把纸翻过来看了看背面是不是也写了东西,确认没有之后,又翻回正面重新看了一遍。
“同学。”
瘦高个抬起头,表情已经完全不一样了,
“你确定你是国际政治的?”
“确定。”
“你这个双向冒泡的写法……你之前在哪学的?”
“自学。”
顾屿语气很淡,
“网上教程挺多的。”
瘦高个看了他好几秒,又看了看手里的答卷。
“矩阵快速幂……”
他指着最后那行小字,声音不自觉地低了半度,
“这个我们协会的副会长也未必会在入社测试里随手写这种东西。”
顾屿心里想的是,你们副会长要是连这都写不出来,那我来这儿挖人的计划怕是要泡汤。
但他脸上只是客气地笑了笑。
旁边那三个格子衫男生已经全部围了过来,一个个伸长脖子看那张A4纸。
“双指针还考虑了UniCOde代
第499章 养鱼先养塘-->>(第2/3页),请点击下一页继续阅读。