如果不是为了面试,刷算法题对自我提升有什么大的价值吗

2020-04-23 15:37:58 +08:00
 ayavvv

之前校招面试的时候刷过很多题,找到工作后两年没有刷题了,现在全都忘记了。

平时工作压根用不到什么动态规划、回溯算法之类的。就算要用直接 google 一下找个现成的稍微学习一下就行了。

在公司内部晋升也没有人会看中这些。

问问各位大佬,除了头条还有哪些公司社招会考算法题?

10831 次点击
所在节点    程序员
80 条回复
loryyang
2020-04-24 11:55:27 +08:00
挺有用的
一是锻炼写代码能力,有想法和写得出来不一样,写得出来和写得好又不一样
二是锻炼排查问题,算法题目的差错比较难,因为很多时候你看不到错误的 case ( LeetCode 不算),很多时候靠仔细分析代码,或者写测试,很锻炼人的
三是锻炼思维能力,类似于数学的作用,高中之后的数学对生活毫无作用,但是他锻炼的是人的思维能力。算法能力也一样,锻炼大脑用的。要看懂并掌握一个复杂算法可不是那么容易的
yukiloh
2020-04-24 12:18:47 +08:00
如果不是真的 XX
又有谁愿意做 OO 呢
lzlee
2020-04-24 12:26:58 +08:00
我觉得做 leetcode, 是有用的
战五渣留个言, 我自己没有怎么刷过
但是周围有精通此道的大神, 他给我留下过或多或少的印象, 基本都是正面的

1. 理解问题很简单清晰, 能够很好的划分 各个故事, 以及故事内的 各个小块
2. 解决问题的时候, 通常都能很快的想到 套路;
3. 就算一开始不是最佳的 套路, 也能在很快 演进出一个相对不错的 套路
4. 他对效率这个东西很敏感
5. 他对边界值很敏感
6. 他对很多东西的原理, 演进路线很清晰, 可惜并不太愿意跟我讲, 也可能是他尝试过只是我没听懂...

也不知道是因为这个导致他刷题厉害, 还是因为刷题厉害, 培养出了他这些东西...

我个人来说, 刷题的结果我不是很重视
我看重的, 是解决问题中付出的努力, 以及在努力中, 领悟的思路, 以及寻找思路的方法
刷题的结果, 只是顺便获得的收益
至于解法记得不记得, 那并不是很重要, 就算我记不得之前吃过多少面包, 但是那些面包已经被我吸收
fcoolish
2020-04-24 14:06:42 +08:00
感觉能训练下思维能力,实际应用没有用。
ayavvv
2020-04-24 14:07:06 +08:00
@rnborca 你这一口一个 low,听着让人不舒服。反正我看我们这边 p8 p9 的大佬也没见他们算法水平有多高。对于业务开发来说设计模式和架构方式这些才是最基本的吧。
ayavvv
2020-04-24 14:10:10 +08:00
@lihongming 讲道理啊,现在给我个业务需求,我也大概能知道怎么写效率最高,以及边界值的处理。锻炼思维有太多种方式了
rnborca
2020-04-24 14:31:31 +08:00
@ayavvv 不舒服说明你 low 阿,戳到痛处了。你所说的没见 p8 p9 的大佬算法水平有多高,只是你想象出来的。
ls2110609
2020-04-24 14:34:07 +08:00
程序 = 算法 + 数据结构
软件 = 程序 + 软件工程
heiheidewo
2020-04-24 14:38:48 +08:00
@ayavvv 但是面试没法考察你的业务知识啊,所以还是面算法。实际工作中,还是查各种问题比较费神,算法好点的人思维大概率会比较好吧
DelayNoMay
2020-04-24 15:02:24 +08:00
算法题不能锻炼人文逻辑思维,只能锻炼数理逻辑思维
Ssskyl
2020-04-24 15:04:31 +08:00
锻炼优化的习惯
BernieDu
2020-04-24 15:10:20 +08:00
@zackwan95 数据来源?
AngryMagikarp
2020-04-24 15:12:35 +08:00
不大,除非是做特定领域业务的。对于大部分程序员,与其看算法,还不如把网络协议、操作系统、数据库、代码组织等知识掌握了。
多少程序员连 HTTP 协议到底怎么回事都不搞清楚,多少程序员连 Network unreachable 这样的提示都看不懂。

大公司用算法面试,就是因为他们是大公司,一切都是“规范化”的,并不是说他们需要懂什么算法的人,只是他们需要有一套统一,但又不太差的筛选标准而已。招进去绝大多数依然和算法没关系。
gggxxxx
2020-04-24 15:44:27 +08:00
其实没啥用。当然个人兴趣还是不错的。
我心目中的优秀程序员是学习能力强和执行力强的那种。开口就是刷了很多题的那种程序员在我心目中是比较 low 的。有那精力不如自己多写点发挥自己想象力的程序,就跟木匠一样,自己有时间打几套家具出来,比什么都强。
编程开发拼的是思维和眼界以及勤奋,死抠一些小的技术点或者算法,说直白点跟孔乙己有什么区别。
cs419
2020-04-24 16:22:34 +08:00
对于招聘
公司招个会计,要求会 office , 但要求会装系统合适吗
菊厂招人开发个操作系统,应聘人不懂操作系统原理合适吗

方向不同,价值不同

人家就想爬点漂亮 MM 的图片,用 python 一天搞定了,谁会先花个十天半个月去学算法。
创业公司刚起步,那肯定是 if else 的一坨代码先把产品做出来。
要等你分库分表、异地多活、ddd 啥的,公司先破产了。

百度、淘宝、谷歌、12306 他们的服务要是不对代码进行优化
再牛掰的硬件也扛不住流量的冲击

20%的技能 解决 80%的需求
剩下的 20%需求 需要用另外的 80%技能去解决
fumeboy
2020-04-24 18:01:53 +08:00
@tt67wq 如果不是为了健身,健身对自我提升有什么大的价值吗
Anarchy
2020-04-24 19:35:41 +08:00
和做数学题一样
zjyl1994
2020-04-25 00:10:54 +08:00
感觉到处都在考算法,就很难顶
ligiggy
2020-04-25 09:45:03 +08:00
@fumeboy 一语中的
polebug
2020-04-25 11:29:49 +08:00
刷算法题就像健身 如果只刷几周 根本没用

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

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

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

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

© 2021 V2EX