工作五年的游戏后端不知道排序算法的复杂度正常吗?

2022 年 9 月 26 日
 luojiedev

最近又要开始招聘了,一直以来,这个问题非常困惑我。有个候选人简历上写着:熟练掌握数据结构和算法。 我问那常见的排序算法有哪些,只说出一个,快速排序。我问那时间复杂度是多少,他说 O(logN)。我无语了。 其实面试了这么多,这个是最让我疼的。毕竟说 O(N),还不是太离谱。

18499 次点击
所在节点    程序员
168 条回复
yhxx
2022 年 9 月 26 日
我前几天也被问到了这个。。也是这么说的。。。绝大部分时候这个纯粹是口误吧,继续聊一下应该就意识到了
ranleng
2022 年 9 月 26 日
我觉得可以记不清是 Big-O 多少,但怎么可能是 O(lgN),基于对比的排序算法都不可能是低于 O(N * lgN) 的
tudouxiong
2022 年 9 月 26 日
不正常
cnoder
2022 年 9 月 26 日
应该是口误了,简单想一下就知道不会是 logn
lululau
2022 年 9 月 26 日
好奇你们做游戏开发的都需要自己写排序算法吗,你们用的啥语言开发,标准库里没有现成的排序函数吗
lmshl
2022 年 9 月 26 日
我现在大概只能默写出来一种我也说不上来名字的排序算法,大概率是 O(nlogn) 的
但这并没有什么意义,我觉得真正的竞争力在于,给对方一个 wiki 页面或者伪代码,论文链接,对方能否在有限时间内(比如 48h )学会并实现出来。

背过这些算法有什么用呢?你们在刷 leetcode 和面试之外的场景,真的有用到这些算法么?给 lc 选手一个 Miller–Rabin primality test 的 介绍,有几个人能仿写出来?
darkengine
2022 年 9 月 26 日
我觉得应该给一段代码,让他现场分析时间复杂度和空间复杂度。
lllllliiii
2022 年 9 月 26 日
如果我猜的没错的话是 n ^ 2 ?
ashin
2022 年 9 月 26 日
快速排序是啥我都想不起了-。-咋办
lumotian
2022 年 9 月 26 日
说明工作比较稳定,不经常需要出来面试
SekiBetu
2022 年 9 月 26 日
百度一下就有了的东西,应届生八股文都背熟了
invalid
2022 年 9 月 26 日
五年游戏前端也记不得几个算法了
zengguibo
2022 年 9 月 26 日
面试的时候造航天飞机,工作了只是个拧螺丝而已
DerekLin1994
2022 年 9 月 26 日
@Rooger 为啥我就预不到你这种老板,虽然我是非科班,但干活不比普通的差,可惜面试真不太会准备,不喜欢八股文,当然我也认为基础还是很重要的,毕竟决定能走多远。
Anarchy
2022 年 9 月 26 日
也不算太离谱 nlogn 你突然问然后就记得有个 logn 了。感觉这种属于比较明显记忆出现些错误,可以简单提点下看有没有正确回答。
mywaiting
2022 年 9 月 26 日
这有啥,SQLite 作者开始写这货的时候,连 B-tree 也不会,不一样折腾出来了~
ShinCurry
2022 年 9 月 27 日
面试与笔试不同之处就在于可以沟通交流。在帖子描述的这种情况下,再追加要求说明一下得出复杂度的分析过程,能更好的考察面试者。并不是每个人都能做随时随地思维缜密毫不紧张的,给一些改正的机会总是好的。
witcat
2022 年 9 月 27 日
现在面试答不上来题还要被人背后念叨啊。咋隔三差五就有这种帖子。
ijrou
2022 年 9 月 27 日
我觉得不正常,,,
cassyfar
2022 年 9 月 27 日
o(logN) 那说明他是真的不懂 Big O 基本含义。。。等于说不用知道所有数,也能严格排序,这不是预言家吗?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://v2ex.ih06.com/t/882982

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX