不会是连入门都没有吧?
不会是连入门都没有吧?
|
chengzhoukunAug 17, 2015 via Android
1
学了不用 并没卵用。
|
|
Rand01phAug 17, 2015 via iPhone
2
应该算入门级……才看到字符串吧
|
|
tushinerAug 17, 2015
3
程序员用得到,而码农用不到
|
|
gantEleCodeAug 17, 2015
4
面试如果问到了能非常流畅的写出KMP 代码还是挺有用的。
|
|
yyfearthAug 17, 2015
5
KMP 是有些难度的
但是除了面试 根本用不到 而且就算是面试 如果一上来就 KMP 估计也没啥意义 面试官考这个又不是考验你记忆力的 而且估计面试官也可能搞不定 KMP @gantEleCode 不一定哦 只能说明是刷过题 但是还是不能体现真实能力 除非是面试顶级大公司 这种作为基础题 刷过 KMP 也算不了什么 |
|
6
算法的本质是让机器像人一样思考,代替人完成任务
|
|
ffffwhAug 17, 2015 via Android
7
是你以为你学会了kmp的层次
|
|
8
你是不是看到第三章字符串了。。。
|
|
typingAug 17, 2015 via iPad
9
在面试中,“会实现”是非常平凡的要求,一般会默认这一点。
基础题目会是kmp的应用,而且题目通常不是那么浅显让你觉得kmp是可行算法。建议刷题分类选择“字符串”,而不是指明“kmp”。 再进一步,我会问“明明两层循环为什么是线性复杂度”。 如果你在简历中标注自己会kmp算法,以上会是一些可能的问题。 再进一步,其他字符串算法你不能不会。没有他们之间的比较你没法明白kmp的特点。这样你用kmp不是因为它适合一个问题,而是因为你只会kmp。 (Suffix tree/array, trie, ac automaton) 希望这些对你后面的学习有帮助。 |
|
surefireAug 17, 2015
10
很牛逼了,我连KMP是什么都不知道
|
|
knightdfAug 17, 2015
11
需要用到的时候再去看下不就得了。。你当被诗啊?
|
|
vietorAug 17, 2015 via Android
12
用不了10年就忘干净了
|
|
fuxiaoheiAug 17, 2015
13
算法是抠细节的东西,不用很容易忘记的。。
|
|
twistoyAug 17, 2015
14
刚看完KMP?NOIP普及组入门的实力?
|
|
devingAug 17, 2015
15
除非你很熟悉这一块,不然就说都不要说,人家问道非得说一点,那就扯上一点,然后赶紧收手.kmp虽然有点难度,但是又不是什么创新创造,花点时间,一两个小时就能搞明白的,根本算不上有挑战性.
|
|
laoyuanAug 17, 2015
16
我认为练习算法可以锻炼思维复杂度、严谨程度,具体是否用的到就无所谓了
|
|
fakefishAug 17, 2015
17
大一的时候学的 kmp ,当时花了很多精力理解。差不多有点理解了,觉得算法可能不太适合我,就学前端了。。
|
|
zhengnanleeAug 17, 2015
18
额。。这只是一个叫做『运算规则』的东西,并不能称作算法。貌似『算法』这个词被程序员们降低太多门槛了。
|
|
tabris17Aug 17, 2015
19
KMP 好像大学时上数据结构课时就学了
属于然并卵的层次 |
|
xxm459259Aug 17, 2015
20
KMP 只在比赛中用到,实际运行中速度并不好。同样的字符串匹配问题多用 BM 以及它的一个简化版本。
|
|
tooweakchenAug 17, 2015
21
入门
|
|
zhujinliangAug 17, 2015 via iPhone
22
@laoyuan 最近经常看你的直播呢
|
|
henryonAug 17, 2015
23
恭喜你加入码农的行列。。
|
|
wph95Aug 17, 2015
24
KMP...信息学竞赛提高组入门等级
|
|
zerh925Aug 17, 2015
25
具体某种算法可能将来并不会用到
但是最大的帮助是训练我们的思维能力 将来遇到类似问题能举一反三 看到 KMP 我的第一反应是 kmplayer 因为我并不知道这个算法 我的工作中也不会用到 但是我不否认学过这个的人或多或少还在收益 但是也许我懂的算法也许他们不会 术业有专攻而已 但是某些大神 也许在造轮子时候因为知道 KMP 可以在它的基础上改造出新的东西 这才是懂算法的真正意义吧 大部分人和人的差距不是智力 而是努力程度和浮躁的心态 |
|
ChangxuAug 17, 2015
26
KMP ?最多是 CS 本科大二的水平
|
|
saeba1030Aug 17, 2015
27
能写进书本的算法都是然并卵的。有用的就是你知道有哪些算法,能干什么,这样在特定场合要解决问题时可以用来就用或者举一反三
|
|
28
学习这些算法更多的是对思维的锻炼。
而上手实现这些算法,则可以锻炼你对边界情况的处理能力。 而且这些流传已久的算法大都是很美的,光是知道就会很令人高兴。 至于这些算法对做工程而言,大多是没什么用。 毕竟,做工程很多时候只是在机械得重复得写胶水代码罢了。 当你想要深入这么学科里的时候,写一些比胶水代码要高神的东西的时候(诸如浏览器,编译器,数据库),算法则是不可或缺的。 然而若是想在工程方面搞一搞的话,写点点胶水代码(诸如 HTML , JavaScript , SQL )便能有很大成就感,此时对于算法的需求并不是那么强烈,更多的是需要耐心和兴趣以及审美能力。 总的说算法就像人们口中说的数学,写点 HTML , JS ,买点菜,势必是用不到的。但是要想钻研更深的计算机科学,算法知识是必备的。 至于到底要不要学算法,完全取决于 LZ 想做什么。 个人建议,不要过早的跳进 网页程序员 的大坑当中,先试试学学看,试着去干掉各大公开课网站上比较“高深”的课程,或许会发现全新的世界。 |
|
liuchang0812Aug 17, 2015
29
大一新生的水平
|
|
abcdabcd987Aug 17, 2015
30
|
|
zhichengAug 17, 2015
31
初级工程师认为写出可以工作的代码就结束了,高级工程师认为写出漂亮的代码就结束了,顶级工程师认为写出可以调试的代码才算结束。
自己看自己在哪个层次上。 |
|
JointLockAug 17, 2015
33
自学算法的中小学生?可看清了,手上的这颗石头就是一颗未经雕琢的原石啊!
锻炼信息学竞赛的中小学生?可沉住气,手上的这颗石头是关键时刻可以拿来一战的武器。 高考后预习大学课程的高中毕业生?可别骄傲,虽然你已经走在大多数高考生同学们前面了。 大学暑假来预习算法课的大学生?可别浮躁,虽然你觉得大学什么课程内容都特么一坨翔... 大学暑假来准备面试题的准毕业生吗?可别慌,学到了就是学到了,万一面试用到了呢... 夏天躺尸时间却想自我提高的半路子出家的程序员?可别觉得为时已晚,该走的路就是要走!! 学习算法这是稳赚不赔的买卖,值当! |
|
MrEggNoodleAug 17, 2015
34
@em70 喜欢你这句概括。
|
|
codingppAug 17, 2015
35
无法学以致用,就没有什么卵用
|
|
dslwindAug 17, 2015 via Android
36
kmp 至今没看懂是什么层次?
|
|
WangxfAug 17, 2015
37
面试的时候有用,大学的时候老师讲过,现在忘得差不多了
|
|
yyfearthAug 17, 2015
38
|
|
liuchang0812Aug 17, 2015
39
@abcdabcd987 以正常人为说
|
|
wezzardAug 17, 2015
40
看了下 KMP 的文章, 5 分鐘自己用 Swift 2 擼了一個,我是設計出身,樓主自己掂量掂量……
|
|
wezzardAug 17, 2015
42
KMP 碰到 "CCCCCCCCCCCCCCCCCCCC" 裏面尋找 "CCCCCCCCCCCCCCCCCCCC" 怎麼辦?這好像是 worst case 啊。
|
|
wezzardAug 17, 2015
47
|
|
hitmanxAug 17, 2015
49
worst case 好像也是 O (m+n )的,以前学过,大概原理还记得,具体的细节忘了
|
|
ant_szAug 17, 2015
50
国内算法好的孩子们都被 Google Facebook 这些厂挑走了。你说学算法有用没有用?
|
|
onceyoungAug 17, 2015 via Android
51
有句话叫书到用时方恨少,你说有用不
|
|
TimePowerAug 17, 2015
52
记得以前看过, 貌似没用过...
|
|
GeoionAug 17, 2015
53
膜拜啊,我都不会这个东西
|
|
wu181184Aug 17, 2015
54
把 LeetCode 过一遍,面试就够用了...
|
|
laoyuanAug 17, 2015
55
我正在刷 LeetCode 啊啊啊,这会在斗鱼直播用 Python 刷: http://www.douyutv.com/laoyuan
|
|
withlqsAug 17, 2015
57
其实无关水平,主要看思维
不过硬要问的话, tourist 的小学水平吧 2333 |
|
tldxdhzAug 17, 2015
58
初中生甚至小学生都有会的,信息学竞赛党
|
|
59
@yyfearth 面试有经历过要写算法的
@typing 有道理啊~正在学 Manacher @JointLock 对... @zhengnanlee 算法博大精深啊。。 @zx120120 嗯嗯,开始学起。。。 |
|
yyfearthAug 18, 2015
60
@hxlx 面试当然要写算法 但是重点不在于你会不会高难度的算法已经结果怎么样
而是过程怎么样 corner case 和 异常 处理如何 代码是否精炼 是否有坏习惯 以及对需求的沟通交流过程 当然 如果是面 Google FB 这些算法题都是一堆一堆的 在 corner case 和 异常处理的前提下 迅速刷完就好了 对于他们而言 算法都是基础 对于面试一般的公司 对于 strstr 这样的算法题 我认为 用暴力算法然后 refine 比上来直接 kmp 要效果好 |
|
hitmanxAug 18, 2015
61
有道理。况且独立写一个没有 bug 的 kmp 算法的也很不容易了,更何况还在面试这种压力大、时间紧张的场合。。我觉得有点像快排,每个人掌握原理后都觉得这个写起来应该不难,但是真写出一个没有 bug 的其实不容易。之前哪个国外高校做过实验,把学生关在一个教室了,给予足够长的时间(每个人可以想用多少时间用多少时间,直到完全确认自己的是对的),但是最终没有 bug 的还是寥寥。
|
|
cst4youAug 18, 2015
62
KMP 是什么可以吃吗
|
|
inviteAug 18, 2015
63
厉害的,我还停留在 KMP 播放器的阶段。
|
|
sinccAug 19, 2015
64
如果什么东西都要用 “学了有没有用“ 来判定,那你就不适合在这个世界生活了。。。算法是对思维很好的锻炼,如果学了算法后,用代码实现,或者去参加几次 ACM 培训、比赛,那你的计算机思维水平要比单纯交几万块钱学费去培训 JAVA 之类的人要高的多。
至于什么层次。。。初级。。。如果你能用你学到的算法解决 ACM 问题,那层次就高一级了。多刷刷 POJ , ZOJ 之类的吧 |
|
jedihyDec 20, 2016
65
|