有良好的数据结构和算法基础

2017-05-21 14:12:59 +08:00
 gaoyadianta
一般这种要求指什么啊,大家有没有稍微具体点的解释啊,比方说哪些书的内容,或者哪些算法的内容,好多招聘需求这么写
6474 次点击
所在节点    程序员
54 条回复
woshixiaohao1982
2017-05-21 17:31:17 +08:00
@Shura 谢谢,索引类型有红黑树 Hash 索引 B+树
woshixiaohao1982
2017-05-21 17:33:57 +08:00
@Shura 每种索引类型都是有自己 适用场景的,例如 16 进制的 UUID 就适合 hash 索引 而不是 B+树,每种索引类型不一样,10 分钟能讲清楚 3 中索引的大概数据类型实现,还有不同的使用场景 就不错了,还有 20 分钟跟面试 扯一下自我介绍,或者面试官提问之类的
woshixiaohao1982
2017-05-21 17:34:54 +08:00
@Shura 我上次面试国泰君安的外包,开发经理还问我 TCP 结束连接 有几次握手呢,不过我 TCP/IP 协议详解 ,看了之后忘了
woshixiaohao1982
2017-05-21 17:37:24 +08:00
实际上 经典基本的数据结构与算法,无非就是算法导论或者算法第四版 上那些算法,能搞懂 80% 搞清楚各个算法的适用场景 其时间复杂度,就已经算个半吊子合格程序员了,搞懂这些东西的好处就在于,你以后去读什么数据库原理 编译原理 操作系统原理的时候就不会懵逼了,不会突然蹦出来 此处采用红黑树实现,然后你带着 100 个黑人问号 去搜索红黑树的问题了
woshixiaohao1982
2017-05-21 17:41:22 +08:00
对于绝大部分业务场景来讲,不懂算法 其实也没什么 ,毕竟大部分工作 无非是找几个会写代码的码农把砖搬完,就算你一个动态规划 能够解决一个公司 价值上百万的业务逻辑,有什么用?专门搞那一块的自然有专门的算法工程师去搞,普通程序员 对算法 重在理解跟运用,在不同的业务场景下,知道哪个算法数据结构是最适用的 就已经算半个合格了
gaoyadianta
2017-05-21 18:13:56 +08:00
看了回复,我要补的课还很多
alcarl
2017-05-21 18:56:07 +08:00
算法是面试用的吧。。。。。专注业务实现的工作中还是看知识面,其实就是 google。。。。。
hanzichi
2017-05-21 19:45:00 +08:00
话说面试问到最难的就是快速排序了,难道因为我面的是前端?
formulahendry
2017-05-21 19:52:49 +08:00
我本科找工作那时候(四年前)的行情:八千块找以下招不到能正确写出二分查找的程序员。 不知道现在的行情怎么样了。
ittianyu
2017-05-21 19:58:14 +08:00
@gaoyadianta 面试前默写几天就好,不用太费心。大一那会被学长骗去搞 ACM,什么 数论、几何、深搜广搜、排序查找、贪心、动态规划。天天刷题,最巅峰的时候能熟练默写 二叉树、n 中排序、队列、栈等实现。后来幡然醒悟,干开发去了。2 年多没碰,现在根本基本写不出来,可能稍微对思维有点作用,然而工作基本用不上,早忘了。if (全部忘了) 完全没用
面试的时候也碰到过问 TCP 原理的,我有句...不知当讲不当讲。
ittianyu
2017-05-21 19:59:14 +08:00
@formulahendry 现在 4k 能招到搞过 ACM,github 有 800+星,博客 5w+ 阅读量的实习生。
wl9739
2017-05-21 20:25:08 +08:00
我的一次真实面试经历:

Q:“熟悉快速排序算法吗?”
A:“熟悉”
Q:“那好,请你解释一下快排的时间复杂度 NlnN 是怎么计算出来的。”
A:“不好意思,刚才您问的什么?”
Q:“解释一下快排的时间复杂度 NlnN 是怎么计算出来的。”
A:“前面一句。”
Q:“熟悉快排么?”
A:“不熟悉”
formulahendry
2017-05-21 20:33:56 +08:00
@ittianyu 我说的是全职员工。我们当时实习大多都是只有 3K 左右。
ittianyu
2017-05-21 20:44:52 +08:00
@formulahendry 不能这么个算法,4 年前北京放假多少,现在房价多少,在比较一下实习工资涨了没有。
zjddp
2017-05-21 20:58:52 +08:00
正在看剑指 offer,不知道 v2er 对这本书评价怎么样
wenmingvs
2017-05-21 21:01:25 +08:00
@zjddp 经典中的经典,面试时候掌握上面的足够了。
acoldfox
2017-05-21 22:12:10 +08:00
写 php 很少写都忘差不多了
formulahendry
2017-05-21 22:15:46 +08:00
@ittianyu 所以我一直说的是四年前的行情呀。我并没有说现在的行情怎么样。实习和全职员工的工资没有可比性。 那时有些同学在大摩的实习工资一天 50,而最后转正的话,全职员工的工资又是多少呢。
20015jjw
2017-05-22 04:14:56 +08:00
Recursion / dp
Graph search / tree search / topological
Graph operation / tree operation 参考 number of islands 和反转二叉树
String operation 参考 longest palindromic substring / longest xxx substring
Bits operation
Heap / Stack / Queue 参考 implement heap with Stack 和反过来 以及 trapped rain water

我觉得差不多了
Matrixbirds
2017-05-22 09:40:48 +08:00
@wl9739 hhh 好多人都是知道实现…(多半是死记忆),根本不知道原理就认为自己真的具备了计算机科学的『基础』能力…

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

https://www.v2ex.com/t/362769

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

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

© 2021 V2EX